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ê aprende em detalhes os conceitos de rede para o Banco de Dados do Azure para o servidor flexível MySQL para criar e acessar um servidor com segurança no Azure.

O servidor flexível do Banco de Dados do Azure para MySQL dá suporte a três maneiras de configurar a conectividade com seus servidores:

  • Acesso público Seu servidor flexível é acessado por meio de um ponto de extremidade público. O ponto final público é um endereço DNS publicamente resolvível. A frase "endereços IP permitidos" refere-se a um intervalo de IPs que você escolhe para dar permissão para acessar seu servidor. Essas permissões são chamadas de regras de firewall.

  • Ponto de extremidade privado Você pode usar pontos de extremidade privados para permitir que hosts em uma rede virtual de rede virtual acessem dados com segurança por meio de um Link Privado.

  • Acesso privado (integração 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 numa rede virtual podem comunicar através de endereços IP privados.

Nota

Depois de implantar um servidor com acesso público ou privado (via integração VNet), não é possível 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.

Escolha uma opção de rede

Escolha Acesso público (endereços IP permitidos) e Método de ponto de extremidade privado se desejar os seguintes recursos:

  • Conectar-se a partir de recursos do Azure sem suporte de rede virtual
  • Conecte-se a partir de recursos fora do Azure que não estão conectados por VPN ou Rota Expressa
  • O servidor flexível é acessível através de um ponto final público e pode ser acessado através de recursos autorizados da Internet. O acesso público pode ser desativado, se necessário.
  • Capacidade de configurar pontos de extremidade privados para acessar o servidor a partir de hosts em uma rede virtual (VNet)

Escolha Acesso privado (integração VNet) se desejar os seguintes recursos:

  • Conecte-se ao seu servidor flexível a partir de recursos do Azure dentro da mesma rede virtual ou de uma rede virtual emparelhada sem a necessidade de configurar um ponto de extremidade privado
  • Utilizar a VPN ou ExpressRoute para ligar a partir de recursos sem ser do Azure ao seu servidor flexível
  • Nenhum ponto final público

As seguintes características se aplicam se você optar por usar a opção de acesso privado ou público:

  • As conexões de endereços IP permitidos precisam se autenticar na instância flexível do servidor do Banco de Dados do Azure para MySQL com credenciais válidas
  • A encriptação de ligação está disponível para o seu tráfego de rede
  • O servidor tem um nome de domínio totalmente qualificado (fqdn). Recomendamos usar o fqdn em vez de um endereço IP para a propriedade hostname em cadeias de conexão.
  • Ambas as 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 acesso a bancos de dados, tabelas e outros objetos.

Cenários de rede virtual não suportados

  • Ponto final público (ou IP público ou DNS): um servidor flexível implementado numa rede virtual não pode ter um ponto final público.
  • Depois de o servidor flexível ser implementado numa rede virtual e numa sub-rede, não será possível movê-lo para outra rede virtual ou sub-rede.
  • Depois que o servidor flexível é implantado, você não pode mover a rede virtual que o servidor flexível usa para outro grupo de recursos ou assinatura.
  • O tamanho da sub-rede (espaços de endereços) não pode ser aumentado a partir do momento que os recursos passam a existir na mesma.
  • A alteração do acesso Público para Privado não é permitida após a criação do servidor. A maneira recomendada é usar a restauração point-in-time.

Nota

Se você estiver usando o servidor DNS personalizado, deverá usar um encaminhador DNS para resolver o FQDN do Banco de Dados do Azure para a instância flexível do servidor MySQL. Consulte a resolução de nomes que usa seu servidor DNS para saber mais.

Hostname (Nome do anfitrião)

Independentemente da sua opção de rede, recomendamos que você use o nome de domínio totalmente qualificado (FQDN) <servername>.mysql.database.azure.com em cadeias de conexão ao se conectar à sua instância de servidor flexível do Banco de Dados do Azure para MySQL. Não é garantido que o endereço IP do servidor permaneça estático. Usar o FQDN ajudará você a evitar fazer alterações na cadeia de conexão.

Um exemplo que usa um FQDN como um 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 flexível do servidor do Banco de Dados do Azure para MySQL usando SSL (Secure Sockets Layer) com criptografia TLS (Transport layer security). O TLS é um protocolo padrão da indústria que garante ligações de rede encriptadas entre o seu servidor de bases de dados e as aplicações cliente, o que lhe permite cumprir os requisitos de conformidade.

O servidor flexível do Banco de Dados do Azure para MySQL dá suporte a conexões criptografadas usando TLS 1.2 (Transport Layer Security) por padrão, e todas as conexões de entrada com TLS 1.0 e TLS 1.1 são negadas por padrão. A imposição de conexão criptografada ou a configuração da versão TLS em seu 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 seu 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, os novos servidores não terão mais permissão para usar o TLS 1.0 ou 1.1, e os servidores existentes não terão permissão para 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 TLS 1.0 ou 1.1 para TLS 1.2. Espera-se que este processo de atualização esteja concluído até ao 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âmetros do servidor Description
Desativar SSL (conexões criptografadas) require_secure_transport = DESLIGADO Se seu aplicativo herdado não oferecer suporte a conexões criptografadas com o Banco de Dados do Azure para instância de servidor flexível MySQL, você poderá desabilitar a imposição de conexões criptografadas ao seu servidor flexível definindo require_secure_transport=OFF.
Impor SSL com TLS versão < 1.2 (será preterido em setembro de 2024) require_secure_transport = ON e tls_version = TLS 1.0 ou TLS 1.1 Se seu aplicativo herdado oferecer suporte a conexões criptografadas, mas exigir TLS versão < 1.2, você poderá habilitar conexões criptografadas, mas configurar seu servidor flexível para permitir conexões com a versão TLS (v1.0 ou v1.1) suportada pelo seu aplicativo
Impor SSL com TLS versão = 1.2 (configuração padrão) require_secure_transport = ON e tls_version = TLS 1.2 Esta é a configuração recomendada e padrão para um servidor flexível.
Impor SSL com TLS versão = 1.3 (Suportado com MySQL v8.0 e superior) require_secure_transport = ON e tls_version = TLS 1.3 Isso é útil e recomendado para o desenvolvimento de novas aplicações

Nota

Não há suporte para alterações na codificação SSL no servidor flexível. Os pacotes de codificação FIPS são impostos por padrão quando tls_version é definido como TLS versão 1.2. Para versões TLS diferentes da versão 1.2, SSL Cipher é definido para as configurações padrão que vem com a instalação da comunidade MySQL.

Revise conectar usando SSL/TLS para saber como identificar a versão TLS que você está usando .

Próximos passos