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 servidor flexível do Banco de Dados do Azure para MySQL para criar e acessar um servidor com segurança no Azure.

O servidor flexível do Banco de Dados do Azure para MySQL oferece suporte a 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 público 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 do 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 da sua opção de rede, recomendamos que você use o FQDN (nome de domínio totalmente qualificado) <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 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 SSL (Secure Sockets Layer) com criptografia TLS (Transport Layer Security). 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 oferece 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 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:

Cenário Configurações de parâmetro do servidor Descrição
Desabilitar SSL (conexões criptografadas) require_secure_transport = OFF Se seu aplicativo herdado não oferecer 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 ao servidor flexível definindo require_secure_transport=OFF.
Impor SSL com a versão do TLS < 1.2 require_secure_transport = ON e tls_version = TLS 1.0 or TLS 1.1 Se o aplicativo herdado der 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 (v1.0 ou v1.1) com suporte no 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 como se conectar usando SSL/TLS para saber mais.

Próximas etapas