Conceitos de conectividade e rede para o Banco de Dados do Azure para MySQL – Servidor Flexível
APLICA-SE A: Banco de Dados do Azure para MySQL – Servidor flexível
Este artigo apresenta os conceitos para controlar a conectividade com sua instância de Servidor Flexível do Banco de Dados do Azure para MySQL. Você aprenderá detalhadamente sobre os conceitos de rede de Servidor Flexível do Banco de Dados do Azure para MySQL a fim de criar e acessar um servidor com segurança no Azure.
O Servidor Flexível do Banco de Dados do Azure para MySQL permite três maneiras de configurar a conectividade com seus servidores:
Acesso público O Servidor Flexível é acessado por meio de um ponto de extremidade público. O ponto de extremidade público é um endereço DNS que poderia ser resolvido publicamente. A frase "endereços IP permitidos" refere-se a um intervalo de IPs que você escolhe para conceder permissão de acesso ao servidor. Essas permissões são chamadas regras de firewall.
Ponto de extremidade privado É possível usar pontos de extremidade privados para seus clusters a fim de permitir que os hosts em uma rede virtual VNet acessem com segurança os dados por meio de um Link Privado.
Acesso privado (integração de VNet) Você pode implantar seu Servidor Flexível em sua Rede Virtual do Azure. As redes virtuais do Azure fornecem comunicação de rede privada e segura. Os recursos em uma rede virtual podem se comunicar por meio de endereços IP privados.
Observação
Depois de implantar um servidor com acesso público ou privado (por meio da integração VNet), você não pode modificar o modo de conectividade. Mas no modo de acesso público, você pode habilitar ou desabilitar pontos de extremidade privados conforme necessário e também desabilitar o acesso público, se necessário.
Escolher uma opção de rede
Escolha o método de acesso público (endereços IP permitidos) e ponto de extremidade privado se quiser os seguintes recursos:
- Conectar-se a partir de recursos do Azure sem suporte à rede virtual
- Conectar-se por meio de recursos fora do Azure que não estão conectados por VPN ou pelo ExpressRoute
- O Servidor Flexível é acessível por meio de um ponto de extremidade público e pode ser acessado por meio de recursos autorizados da Internet. Se necessário, o acesso público pode ser desabilitado.
- Capacidade de configurar pontos de extremidade privados para acessar o servidor de hosts em uma rede virtual (VNet)
Escolha acesso privado (integração VNet) se quiser os seguintes recursos:
- Conecte-se ao Servidor Flexível a partir de recursos do Azure na mesma rede virtual ou em uma rede virtual emparelhada sem a necessidade de configurar um ponto de extremidade privado
- Usar a VPN ou o ExpressRoute para se conectar de recursos que não são do Azure com seu Servidor Flexível
- Nenhum ponto de extremidade público
As seguintes características se aplicam se você escolher usar o acesso privado ou a opção de acesso público:
- As conexões de endereços IP permitidos precisam ser autenticadas na instância de Servidor Flexível do Banco de Dados do Azure para MySQL com credenciais válidas
- A criptografia de conexão está disponível para o tráfego de rede
- O servidor tem um FQDN (nome de domínio totalmente qualificado). Recomendamos usar o FQDN em vez de um endereço IP para a propriedade de nome do host nas cadeias de conexão.
- As duas opções controlam o acesso no nível do servidor, não no nível do banco de dados ou da tabela. Você usaria as propriedades de funções do MySQL para controlar o banco de dados, a tabela e o acesso a outros objetos.
Cenários de rede virtual sem suporte
- Ponto de extremidade público (ou IP ou DNS): um Servidor Flexível implantado em uma rede virtual não pode ter um ponto de extremidade público.
- Depois que o Servidor Flexível for implantado em uma rede virtual e sub-rede, você não poderá movê-lo para outra rede virtual ou sub-rede.
- Depois que o Servidor Flexível for implantado, você não poderá mover a rede virtual usada pelo servidor flexível para outro grupo de recursos ou assinatura.
- O tamanho da sub-rede (espaços de endereço) não pode ser aumentado após a criação de recursos na sub-rede.
- A alteração de acesso Público para Privado não é permitida depois que o servidor é criado. A maneira recomendada é usar a restauração pontual.
Observação
Se você estiver usando o servidor DNS personalizado, deverá usar um encaminhador DNS para resolver o FQDN da instância de Servidor Flexível do Banco de Dados do Azure para MySQL. Veja a resolução de nomes que usa seu servidor DNS para saber mais.
Nome do host
Independentemente de sua opção de rede, recomendamos que você use o nome de domínio totalmente qualificado (FQDN) <servername>.mysql.database.azure.com
nas cadeias de conexão ao se conectar à instância de Servidor Flexível do Banco de Dados do Azure para MySQL. Não há garantia de que o endereço IP do servidor permanecerá estático. Usar o FQDN ajudará você a evitar fazer alterações na cadeia de conexão.
Um exemplo que usa um FQDN como nome de host é hostname = servername.mysql.database.azure.com. Sempre que possível, evite usar hostname = 10.0.0.4 (um endereço privado) ou hostname = 40.2.45.67 (um endereço público).
TLS e SSL
O Servidor Flexível do Banco de Dados do Azure para MySQL dá suporte à conexão de seus aplicativos cliente à instância de servidor flexível do Banco de Dados do Azure para MySQL usando o protocolo SSL com criptografia TLS. O TLS é um protocolo padrão do setor que garante conexões de rede criptografadas entre o servidor de banco de dados e os aplicativos cliente, permitindo que você atenda aos requisitos de conformidade.
O Servidor Flexível do Banco de Dados do Azure para MySQL dá suporte a conexões criptografadas por meio do protocolo TLS 1.2 por padrão e todas as conexões de entrada com o TLS 1.0 e o TLS 1.1 são negadas por padrão. A configuração de imposição de conexão criptografada ou de TLS no Servidor Flexível pode ser configurada e alterada.
A seguir estão as diferentes configurações de SSL e TLS que você pode ter para o Servidor Flexível:
Importante
De acordo com a Remoção do Suporte para os Protocolos TLS 1.0 e TLS 1.1, a partir do início de setembro de 2024, novos servidores não poderão mais usar o TLS 1.0 ou 1.1 e os servidores existentes não poderão fazer downgrade para essas versões. A partir de meados de setembro de 2024, iniciaremos uma atualização obrigatória de todos os servidores que atualmente usam o TLS 1.0 ou 1.1 para o TLS 1.2. Espera-se que esse processo de atualização seja concluído até o final de setembro de 2024. É altamente recomendável que os clientes garantam que seus aplicativos sejam totalmente compatíveis com o TLS 1.2 antes do final de setembro.
Cenário | Configurações de parâmetro do servidor | Descrição |
---|---|---|
Desabilitar SSL (conexões criptografadas) | require_secure_transport = OFF | Se o aplicativo herdado não der suporte a conexões criptografadas com a instância de Servidor Flexível do Banco de Dados do Azure para MySQL, você poderá desabilitar a imposição de conexões criptografadas com o servidor flexível definindo require_secure_transport=OFF. |
Impor o SSL com a versão do TLS < 1.2 (será preterido em setembro de 2024) | require_secure_transport = ON e tls_version = TLS 1.0 or TLS 1.1 | Se o aplicativo herdado oferecer suporte a conexões criptografadas, mas exigir a versão TLS < 1.2, você poderá habilitar conexões criptografadas e configurar o Servidor Flexível para permitir conexões com a versão TLS (v 1.0 ou v 1.1) com suporte do aplicativo |
Impor SSL com a versão do TLS = 1.2 (configuração padrão) | require_secure_transport = ON e tls_version = TLS 1.2 | Essa é a configuração padrão e recomendada para um Servidor Flexível. |
Impor SSL com a versão do TLS = 1.3 (com suporte com o MySQL v 8.0 e superior) | require_secure_transport = ON e tls_version = TLS 1.3 | Essa configuração é útil e recomendada para desenvolvimento de novos aplicativos |
Observação
Não há suporte para alterações na criptografia SSL no Servidor Flexível. Os conjuntos de criptografia FIPS são impostos por padrão quando tls_version é definido como TLS versão 1.2. Para versões de TLS diferentes da versão 1.2, a criptografia SSL é definida com as configurações padrão que vêm com a instalação da comunidade do MySQL.
Examine a conexão usando SSL/TLS para saber como identificar a versão do TLS que você está usando.
Próximas etapas
- Saiba como habilitar o acesso privado (integração VNet) usando o portal do Azure ou a CLI do Azure
- Saiba como habilitar o acesso público (endereços IP permitidos) usando o portal do Azure ou a CLI do Azure
- Aprenda como configurar o link privado para o Servidor Flexível do Banco de Dados do Azure para MySQL no portal do Azure.