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 relacional totalmente gerido que oferece alta disponibilidade, backups automáticos e alojamento escalável compatível com MySQL. Proteger as suas implementações flexíveis de servidores ajuda a proteger dados sensíveis, reduzir a exposição à identidade e à rede, e a suportar os requisitos de conformidade.
Este artigo fornece recomendações de segurança para ajudar a proteger a sua implementação do Base de Dados do Azure para MySQL.
As recomendações de segurança neste artigo implementam os princípios do Confiança Zero: "Verificar explicitamente", "Usar acesso com privilégios mínimos" e "Assumir violação". Para obter orientações abrangentes sobre Confiança Zero, consulte o Centro de Orientação Confiança Zero.
Segurança de rede
Os controlos de segurança de rede ajudam a restringir a forma como os clientes acedem às instâncias flexíveis do Base de Dados do Azure para MySQL e reduzem a exposição ao tráfego público da internet.
- Desativar o acesso à rede pública para servidores de produção: Desativar o acesso público quando os clientes podem ligar-se através de endpoints privados, de modo a que apenas caminhos de conectividade privados possam chegar ao servidor flexível. Para obter mais informações, consulte Ligação Privada para a Base de Dados do Azure para MySQL – Servidor Flexível.
- Utilize pontos finais privados para servidores com acesso público: Utilize o Private Link para expor o servidor flexível através de um endereço IP privado na sua rede virtual e limite o acesso aos dados a ligações aprovadas de pontos finais privados. Para obter mais informações, consulte Ligação Privada para a Base de Dados do Azure para MySQL – Servidor Flexível.
- Implementar servidores de acesso privado com integração de rede virtual: Utilizar integração de rede virtual quando o servidor flexível tiver de ser injetado numa sub-rede delegada e acedido apenas a partir da mesma rede virtual, redes virtuais peered, VPN ou ExpressRoute. Para mais informações, consulte Acesso à Rede Privada com integração de rede virtual para Base de Dados do Azure para MySQL - Flexible Server.
- Limite as regras de firewall público: Use regras de firewall público apenas para cenários que exijam conectividade pública, permita apenas intervalos IPv4 específicos e evite a opção que permite o acesso a partir de todos os serviços Azure porque pode permitir ligações de subscrições de outros clientes. Para mais informações, consulte Public Network Access for Base de Dados do Azure para MySQL - Flexible Server.
Gestão de identidade e acesso
Os controlos de identidade e acesso ajudam a centralizar a autenticação, reduzem a exposição a credenciais e aplicam privilégios mínimos tanto para operações de gestão do Azure como para o acesso à base de dados.
- Use a autenticação Microsoft Entra para acesso à base de dados: Configure a autenticação Microsoft Entra para um servidor flexível do Azure Database Database for MySQL, para que utilizadores e aplicações possam autenticar-se com identidades Microsoft Entra em vez de dependerem apenas de palavras-passe MySQL. Para mais informações, consulte autenticação do Microsoft Entra para o Base de Dados do Azure para MySQL - Servidor Flexível.
- Utilize a autenticação exclusiva do Microsoft Entra sempre que possível: Desative a autenticação nativa do MySQL depois de migrar os utilizadores e as aplicações para a autenticação do Microsoft Entra, para reduzir as vias de acesso baseadas em palavra-passe ao servidor flexível. Para mais informações, consulte autenticação do Microsoft Entra para Base de Dados do Azure para MySQL - Flexible Server.
- Use identidades geridas para ligações de aplicações: Use identidades geridas ou principais de serviço com autenticação Microsoft Entra para que as aplicações se liguem ao Base de Dados do Azure para MySQL com tokens em vez de palavras-passe de base de dados incorporadas. Para mais informações, consulte autenticação do Microsoft Entra para Base de Dados do Azure para MySQL - Flexible Server.
- Atribuir permissões de base de dados com privilégios mínimos: Crie utilizadores dedicados de MySQL ou utilizadores de base de dados mapeados pelo Microsoft Entra para cada aplicação ou função administrativa, e conceda apenas as permissões de esquema, tabela e operação que cada identidade necessita. Para obter mais informações, veja Criar utilizadores na Base de Dados do Azure para MySQL.
- Impor o Acesso Condicional para administradores da Base de Dados Base de Dados do Azure para MySQL: Aplicar políticas de Acesso Condicional que exijam autenticação multifator para identidades capazes de gerir recursos flexíveis do servidor através de ferramentas do Azure Resource Manager, como o portal Azure, CLI do Azure e Azure PowerShell. Para mais informações, consulte Exigir MFA para gestão do Azure.
Proteção de dados
O Base de Dados do Azure para MySQL encripta os dados em repouso com chaves geridas pelo serviço por defeito. Os controlos seguintes dão-lhe mais controlo sobre a encriptação, gestão de chaves e ligações encriptadas dos clientes.
-
Exigir ligações encriptadas ao cliente: Mantenha
require_secure_transportativado para que as ligações do cliente ao Base de Dados do Azure para MySQL usem encriptação TLS e não enviem tráfego de base de dados em texto claro. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL. -
Aplicar o TLS 1.3 para servidores MySQL 8.0: Defina
tls_versionparaTLS 1.3no Base de Dados do Azure para MySQL 8.0 servidores flexíveis depois de confirmar que as aplicações e drivers clientes suportam TLS 1.3. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL. - Validar certificados de servidor a partir dos clientes: Configurar aplicações cliente para validar a cadeia de certificados do servidor e confiar apenas nas autoridades de certificação raiz para que rotações rotineiras de CA intermédia ou certificado de servidor não quebrem as ligações seguras. Para mais informações, consulte Segurança da Camada de Transporte (TLS) no Base de Dados do Azure para MySQL.
- Utilize chaves geridas pelo cliente para o controlo das chaves: Utilize chaves geridas pelo cliente armazenadas no Azure Key Vault ou no Azure Key Vault Managed HSM quando necessitar de segregação de funções, gestão do ciclo de vida das chaves controlada pelo cliente ou controlos de conformidade adicionais para a encriptação de dados em repouso. Para mais informações, consulte Encriptação de dados com chaves geridas pelo cliente para Base de Dados do Azure para MySQL.
- Proteger as dependências de chaves geridas pelo cliente: Ativar a proteção contra eliminação suave e purga no Key Vault ou HSM Gerido que armazena a chave gerida pelo cliente, atribuir as permissões de chave necessárias à identidade gerida atribuída pelo utilizador ao servidor e monitorizar o acesso à chave, pois a perda de acesso à chave pode tornar o servidor flexível inacessível. Para mais informações, consulte Encriptação de dados com chaves geridas pelo cliente para Base de Dados do Azure para MySQL.
Registo e monitorização
Registar e monitorizar os controlos ajuda-o a detetar atividade suspeita na base de dados, investigar alterações administrativas e preservar provas de auditoria para a conformidade.
-
Ativar registos de auditoria MySQL: Defina
audit_log_enabledparaON, escolha os tipos de eventos de auditoria que correspondam aos seus requisitos de segurança e conformidade, e capture eventos de ligação, administrativos, DDL e DML para investigação. Para mais informações, consulte Tutorial: Configurar registos de auditoria usando Base de Dados do Azure para MySQL - Servidor Flexível. -
Encaminhe os registos de auditoria para o Azure Monitor: Configure as definições de diagnóstico para enviar a
MySqlAuditLogscategoria do registo de recursos para um espaço de trabalho, hub de eventos ou conta de armazenamento da Log Analytics, para que possa consultar eventos de auditoria naAzureDiagnosticstabela, reter provas e integrar eventos de auditoria à base de dados com os fluxos de trabalho das operações de segurança. Para mais informações, consulte Tutorial: Configurar registos de auditoria usando Base de Dados do Azure para MySQL - Servidor Flexível. - Utilize o livro de trabalho de auditoria: Utilize o livro de trabalho de auditoria integrado do Azure Monitor para o Base de Dados do Azure para MySQL para analisar ações administrativas, resumos de auditoria, eventos de ligação, resumos de acesso a tabelas e erros identificados. Para mais informações, consulte Tutorial: Configurar registos de auditoria usando Base de Dados do Azure para MySQL - Servidor Flexível.
- Ativar o Defender para bases de dados relacionais open-source: Ativar o Microsoft Defender para bases de dados relacionais open-source no Microsoft Defender para a Cloud para que instâncias flexíveis do Base de Dados do Azure para MySQL possam gerar alertas para atividade anómala ou potencialmente prejudicial em bases de dados. Para mais informações, consulte Enable Defender para bases de dados relacionais open-source no Azure.
Conformidade e governança
Os controlos de conformidade e governação ajudam-no a impor uma configuração segura consistente em frotas de servidores flexíveis do Base de Dados do Azure para MySQL e a proteger os recursos de produção contra alterações acidentais ou não autorizadas.
-
Impor registos de diagnóstico com Azure Policy: Atribuir definições incorporadas do Azure Policy para
microsoft.dbformysql/flexibleserversdefinições de diagnóstico, como políticas que encaminham registos para Log Analytics, Event Hubs ou Storage, para que dados flexíveis de auditoria de servidores sejam recolhidos consistentemente. Para obter mais informações, consulte as Definições de Política Incorporadas do Azure Policy. -
Aplicar bloqueios de eliminação a servidores de produção: Adicionar um
CanNotDeletebloqueio aos recursos flexíveis do servidor Base de Dados do Azure para MySQL para produção para reduzir o risco de eliminação acidental, preservando as alterações operacionais normais. Para obter mais informações, consulte Bloquear seus recursos do Azure para proteger sua infraestrutura. - Identifique recursos de bases de dados para governação: Aplique etiquetas como carga de trabalho, ambiente, classificação de dados, proprietário e centro de custos aos recursos flexíveis do Base de Dados do Azure para MySQL, para que atribuições de políticas, consultas de inventário e revisões de custos possam distinguir cargas de trabalho de produção e de bases de dados sensíveis. Para obter mais informações, consulte Usar etiquetas para organizar os seus recursos do Azure e a sua hierarquia de gerenciamento.
Backup e recuperação
Os controlos de backup e recuperação ajudam-no a recuperar de eliminações acidentais, corrupção de dados, interrupções regionais e operações de alteração arriscadas.
- Configure a retenção de backups para objetivos de recuperação: Defina o período flexível de retenção de backup de servidores do Base de Dados do Azure para MySQL entre 1 e 35 dias, com base nos requisitos de pontos de recuperação e conformidade da sua carga de trabalho. Para obter mais informações, veja Cópia de segurança e restauro na Base de Dados do Azure para MySQL.
- Utilize cópias de segurança com redundância geográfica para recuperação regional: Ative o armazenamento de cópias de segurança com redundância geográfica quando precisar da replicação das cópias de segurança para uma região emparelhada e da possibilidade de efetuar um restauro geográfico após uma falha regional. Para mais informações, consulte Visão Geral da continuidade do negócio com Base de Dados do Azure para MySQL - Servidor Flexível.
- Desencadeie backups on-demand antes de alterações de alto risco: Crie um backup on-demand antes de migrações de esquemas, grandes alterações de configuração ou operações de manutenção para manter um ponto de restauro recente alinhado com a política de retenção de backups do servidor. Para mais informações, consulte Acionar uma cópia de segurança a pedido de uma instância do Base de Dados do Azure para MySQL - Flexible Server com o portal do Azure.
- Teste procedimentos de restauro: Valide procedimentos de restauro e geo-restauro no momento para cargas de trabalho representativas, de modo a compreender as definições do servidor, etiquetas, regras de rede e ações pós-restauração necessárias durante a recuperação. Para obter mais informações, veja Cópia de segurança e restauro na Base de Dados do Azure para MySQL.
Passos seguintes
- Melhores práticas de arquitetura para Base de Dados do Azure para MySQL
- Centro de orientação Confiança Zero
- Autenticação do Microsoft Entra para o Banco de Dados do Azure para MySQL - Flexible Server
- Transport Layer Security (TLS) em Base de Dados do Azure para MySQL
- Backup e restauração no Base de Dados do Azure para MySQL