Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Base de Dados do Azure para MySQL é um serviço de base de dados totalmente gerido que oferece alta disponibilidade incorporada, backups automatizados e capacidades de escalabilidade. Proteger as implementações das suas bases de dados MySQL é crucial para proteger dados sensíveis e manter a conformidade com os padrões do setor.
Este artigo orienta-o sobre como proteger a sua base de dados Azure para a implementação do MySQL Server.
Segurança de rede
A secção de Segurança de Rede orienta-o na prevenção do acesso público e na utilização das funcionalidades de rede para integrar o seu MySQL numa arquitetura de rede cloud segura e segmentada. Para detalhes conceptuais, veja Conceitos de conectividade e redes para Base de Dados do Azure para MySQL - Servidor Flexível.
Para melhorar a segurança do seu servidor de base de dados MySQL, considere as seguintes melhores práticas:
- Desative o acesso à rede pública: Desative o acesso à rede pública para o seu MySQL para evitar exposição à internet. Essa ação garante que apenas redes confiáveis possam acessar seu banco de dados.
- Endpoints Privados: Use Endpoints Privados para se ligar de forma segura ao seu MySQL a partir da sua rede virtual.
- Em alternativa, utilize a integração de rede virtual: utilize a integração de rede virtual para ligar o seu MySQL à sua rede virtual. Essa integração permite o acesso seguro de seus recursos do Azure e do servidor a recursos consumidos, como IA.
- Regras de firewall legadas: Se precisar de permitir o acesso a partir de endereços IP específicos, use regras de firewall e endpoints de serviço legados. No entanto, essa abordagem não é recomendada. Em vez disso, é preferível usar pontos de extremidade privados ou a integração de rede virtual.
Os artigos de segurança de rede estão nas seções de rede:
- Conceitos de conectividade e redes para Base de Dados do Azure para MySQL
- Ligação Privada para Base de Dados Azure para MySQL
- Acesso à Rede Privada usando integração de rede virtual para Base de Dados do Azure para MySQL
- Public Network Access for Base de Dados do Azure para MySQL
Gestão de identidades
A secção de Gestão de Identidade foca-se na autenticação, segurança de identidades e controlos de acesso, utilizando sistemas centralizados de gestão de identidade e acessos. Ele abrange práticas recomendadas, como mecanismos de autenticação forte e identidades gerenciadas para aplicativos.
Utilize o Microsoft Entra em vez da autenticação local da base de dados: Desative a autenticação local no seu servidor MySQL. Em vez disso, use apenas a autenticação do Microsoft Entra (não o modo misto) para gerenciar o acesso ao seu banco de dados. O Microsoft Entra fornece autenticação centralizada com controles de segurança fortes e proteção em tempo real do Defender for Identity. Para mais informações, consulte Microsoft Entra de um modo geral e a autenticação do Microsoft Entra para Base de Dados do Azure para MySQL – servidor flexível.
Usar identidades gerenciadas para acesso seguro a aplicativos: use identidades gerenciadas no Azure para autenticar aplicativos e serviços com segurança sem a necessidade de gerenciar credenciais. As identidades geridas fornecem uma forma segura e simplificada de aceder a recursos como o Azure Database para MySQL. Para obter mais informações, consulte Managed Identities.
Impor segurança por meio de políticas de acesso condicional: configure políticas de acesso condicional no Microsoft Entra para impor controles de segurança com base no contexto do usuário, local ou dispositivo. Estas políticas permitem a aplicação dinâmica de requisitos de segurança com base no risco, melhorando a postura geral de segurança. Para obter mais informações, visite Acesso condicional do Microsoft Entra.
A autenticação local baseia-se nas capacidades de autenticação do MySQL: Se tiver de usar autenticação local, certifique-se de que segue a documentação oficial do MySQL sobre Controlo de Acesso e Gestão de Contas. Instruções específicas do Azure para gerir utilizadores MySQL podem ser encontradas em Create users in Base de Dados do Azure para MySQL.
Controlo de acesso
A secção de controlo de acesso foca-se em garantir o nível de acesso com base no princípio do privilégio mínimo para reduzir o risco de acesso não autorizado por
- Restringir e gerir permissões elevadas.
- Aplicar a autenticação multifator.
- Garantir que as ações privilegiadas são registadas e auditadas.
Os serviços, funcionalidades e melhores práticas de segurança para controlo de acessos incluem:
Use os papéis Entra para controlo de acesso: Implemente o Azure Role-Based Controlo de Acesso (RBAC) para gerir o acesso à Azure Database para recursos MySQL. Atribua funções com base no princípio do menor privilégio, garantindo que os usuários e aplicativos tenham apenas as permissões de que precisam. Para mais informações, visite Azure Role Based Controlo de Acesso (RBAC) em geral e Microsoft Entra authentication for Base de Dados do Azure para MySQL - Flexible Server.
Siga as melhores práticas da Entra:
- Utilize autenticação multifator (MFA) para adicionar uma camada extra de segurança para o acesso dos utilizadores.
- Implementar a Gestão de Identidade Privilegiada (PIM) para gerir, controlar e monitorizar o acesso.
- Políticas de Acesso Condicional, acesso no momento certo (JIT) para proteger os seus utilizadores e bases de dados.
Gerir utilizadores locais de bases de dados, papéis e permissões: Utilize a gestão de papéis incorporada do MySQL para controlar o acesso ao nível da base de dados. Crie funções personalizadas com permissões específicas para impor o princípio de menor privilégio. Analise e audite regularmente essas funções para garantir a conformidade com as políticas de segurança. Para mais informações, visite Criar utilizadores no Base de Dados do Azure para MySQL.
Proteção de dados
A seção de proteção de dados se concentra na proteção de dados confidenciais em repouso e em trânsito. Ele garante que os dados sejam criptografados, o acesso seja controlado e as informações confidenciais sejam protegidas contra acesso não autorizado. Ele enfatiza o uso de criptografia, conexões seguras e mascaramento de dados para salvaguardar a integridade e a confidencialidade dos dados.
Aqui estão alguns possíveis serviços de segurança, recursos e práticas recomendadas para a seção de proteção de dados:
Criptografar dados em trânsito
Verifique ligações TLS: O Azure MySQL usa sempre TLS para encriptar dados em trânsito entre a sua aplicação e a base de dados. Configure a sua aplicação para verificar o certificado utilizado, como a CA raiz, certificados expirados, incompatibilidade no nome do host e revogação do certificado. Esta prática ajuda a proteger informações sensíveis contra intercetações e ataques 'man-in-the-middle'. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL.
Verifique se o cliente tem os certificados TLS mais recentes instalados: certifique-se de que seus aplicativos cliente tenham os certificados TLS mais recentes instalados para oferecer suporte a conexões seguras. Esta prática ajuda a prevenir falhas de ligação e garante que a sua aplicação pode estabelecer ligações seguras com o servidor MySQL. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL.
Exija o uso do TLS 1.3: Configura o teu servidor MySQL para exigir TLS 1.3 para todas as ligações. Essa configuração garante que apenas a versão mais recente e segura do protocolo seja usada, proporcionando melhor segurança e desempenho. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL.
Encriptação em repouso
Os dados são sempre encriptados de forma transparente em repouso com o SMK: Base de Dados do Azure para MySQL encripta automaticamente os dados em repouso utilizando chaves geridas por serviço (SMK). Esta encriptação garante que os seus dados estão protegidos sem necessitar de configuração adicional. Ele depende da infraestrutura de armazenamento subjacente do Azure. Ele abrange o servidor primário, réplicas, recuperação point-in-time (PITR) e backups. Para mais informações, consulte Encriptação de dados para o Base de Dados do Azure para MySQL – servidor flexível com o portal do Azure.
Usar chaves gerenciadas pelo cliente para controle adicional: se você precisar de mais controle sobre chaves de criptografia, use chaves gerenciadas pelo cliente (CMK) armazenadas no Cofre de Chaves do Azure ou no Azure HSM. Essa opção permite que você gerencie suas chaves de criptografia e fornece mais opções de segurança e conformidade. Para mais informações, consulte Encriptação de dados com chaves geridas pelo cliente para Base de Dados do Azure para MySQL.
Configurar a rotação automática de chaves no KV ou no HSM gerenciado: se você usar chaves gerenciadas pelo cliente, configure a rotação automática de chaves no Cofre de Chaves do Azure para garantir que suas chaves de criptografia sejam atualizadas regularmente. O Azure Database para MySQL suporta atualizações automáticas de versões de chave após a rotação de uma chave. Para mais informações, consulte Configurar autorrotação de chaves no Azure Managed HSM ou Compreender a autorrotação no Azure Key Vault para mais detalhes sobre o Key Vault.
Criptografe dados ultrassensíveis com criptografia do lado do cliente: para dados ultrasconfidenciais, considere implementar a criptografia do lado do cliente. Essa abordagem envolve criptografar dados antes de enviá-los para o banco de dados, garantindo que apenas dados criptografados sejam armazenados no banco de dados. Essa prática fornece uma camada maior de segurança, pois o próprio banco de dados e, portanto, o administrador do banco de dados não tem acesso aos dados não criptografados.
Deteção de registos e ameaças
A seção de registro em log e deteção de ameaças aborda controles para detetar ameaças em ambientes do Azure.
Secção de serviços de segurança, funcionalidades e melhores práticas para registo e deteção de ameaças:
Habilitar a coleta de logs de diagnóstico: verifique se o log de diagnóstico está habilitado selecionando a categoria Grupo "auditoria". Use a Política do Azure para implementar:
Utilize o Microsoft Defender para Open-Source bancos de dados relacionais: use o Microsoft Defender para Open-Source bancos de dados relacionais para aprimorar a postura de segurança de sua instância de servidor flexível do PostgreSQL. Este serviço oferece proteção avançada contra ameaças, avaliações de vulnerabilidade e recomendações de segurança personalizadas para bancos de dados de código aberto. Para obter mais informações, visite Visão geral do Microsoft Defender para Open-Source bancos de dados relacionais para obter mais detalhes.