Utilizar os pontos finais de serviço e regras de Rede Virtual para Base de Dados do Azure para MySQL

APLICA-SE A: Base de Dados do Azure para MySQL - Servidor Único

Importante

Base de Dados do Azure para MySQL - O Servidor Único está no caminho da reforma. Recomendamos vivamente que faça upgrade para Base de Dados do Azure para MySQL - Servidor Flexível. Para obter mais informações sobre migração para Base de Dados do Azure para MySQL - Servidor Flexível, veja o que está a acontecer com Base de Dados do Azure para MySQL Servidor Único?

As regras de rede virtual são uma funcionalidade de segurança de firewall que controla se o seu servidor Base de Dados do Azure para MySQL aceita comunicações que são enviadas a partir de determinadas sub-redes em redes virtuais. Este artigo explica porque é que a funcionalidade de regra de rede virtual é, por vezes, a melhor opção para permitir a comunicação ao servidor Base de Dados do Azure para MySQL.

Para criar uma regra de rede virtual, deve primeiro existir uma rede virtual (VNet) e um ponto final de serviço de rede virtual para a regra a referência. A imagem a seguir ilustra como um ponto final de serviço Rede Virtual funciona com Base de Dados do Azure para MySQL:

Exemplo de como funciona um VNet Service Endpoint

Nota

Esta funcionalidade encontra-se disponível em todas as regiões do Azure, onde Base de Dados do Azure para MySQL é implementada para servidores Fins Gerais e Otimizados de Memória. Em caso de observação de VNet, se o tráfego estiver a fluir através de um VNet Gateway comum com pontos finais de serviço e é suposto fluir para o par, por favor, crie uma regra ACL/VNet para permitir que a Azure Máquinas Virtuais no Gateway VNet aceda ao servidor Base de Dados do Azure para MySQL.

Também pode considerar a utilização de Private Link para ligações. Private Link fornece um endereço IP privado no seu VNet para o servidor Base de Dados do Azure para MySQL.

Terminologia e descrição

Rede virtual: Pode ter redes virtuais associadas à sua subscrição Azure.

Sub-rede: Uma rede virtual contém sub-redes. Quaisquer máquinas virtuais Azure (VMs) que tenha estão atribuídas a sub-redes. Uma sub-rede pode conter vários VMs ou outros nós computacional. Os nós computacional que estão fora da sua rede virtual não podem aceder à sua rede virtual a menos que configuure a sua segurança para permitir o acesso.

Rede Virtual ponto final de serviço: Um ponto final de serviço Rede Virtual é uma sub-rede cujos valores de propriedade incluem um ou mais nomes formais de tipo de serviço Azure. Neste artigo estamos interessados no nome-tipo do Microsoft.Sql, que se refere ao serviço Azure nomeado Base de Dados SQL. Esta etiqueta de serviço também se aplica aos serviços Base de Dados do Azure para MySQL e PostgreSQL. É importante notar que ao aplicar a etiqueta de serviço Microsoft.Sql num ponto final do serviço VNet, irá configurar o tráfego de ponto final de serviço para todos os SQL do Azure Bases de Dados, Base de Dados do Azure para MySQL e Base de Dados do Azure para PostgreSQL servidores na sub-rede.

Regra de rede virtual: Uma regra de rede virtual para o seu servidor Base de Dados do Azure para MySQL é uma sub-rede listada na lista de controlo de acesso (ACL) do seu servidor Base de Dados do Azure para MySQL. Para estar no ACL para o seu servidor Base de Dados do Azure para MySQL, a sub-rede deve conter o nome do tipo Microsoft.Sql.

Uma regra de rede virtual diz ao seu Base de Dados do Azure para MySQL servidor para aceitar comunicações de todos os nó que estiverem na sub-rede.

Benefícios de uma regra de rede virtual

Até tomar medidas, os VMs nas suas sub-redes não podem comunicar com o servidor Base de Dados do Azure para MySQL. Uma ação que estabelece a comunicação é a criação de uma regra de rede virtual. A lógica para escolher a abordagem da regra VNet requer uma discussão de comparação e contraste envolvendo as opções de segurança concorrentes oferecidas pela firewall.

A. Permitir acesso aos serviços do Azure

O painel de segurança 'Ligação' tem um botão ON/OFF com a etiqueta Permitir o acesso aos serviços Azure. A definição ON permite comunicações de todos os endereços Azure IP e todas as sub-redes Azure. Estes IPs ou sub-redes Azure podem não ser propriedade de si. Esta definição ON é provavelmente mais aberta do que pretende que o seu Base de Dados do Azure para MySQL Database seja. A funcionalidade de regra de rede virtual oferece um controlo granular muito mais fino.

B. Regras de IP

A firewall Base de Dados do Azure para MySQL permite especificar as gamas de endereços IP a partir das quais as comunicações são aceites na Base de Dados Base de Dados do Azure para MySQL. Esta abordagem é boa para endereços IP estáveis que estão fora da rede privada Azure. Mas muitos nós dentro da rede privada Azure estão configurados com endereços IP dinâmicos . Os endereços IP dinâmicos podem mudar, como quando o seu VM é reiniciado. Seria uma loucura especificar um endereço IP dinâmico numa regra de firewall, num ambiente de produção.

Pode salvar a opção IP obtendo um endereço IP estático para o seu VM. Para mais informações, consulte endereços IP privados para uma máquina virtual utilizando o portal do Azure.

No entanto, a abordagem ip estática pode tornar-se difícil de gerir, e é dispendiosa quando feita em escala. As regras de rede virtual são mais fáceis de estabelecer e gerir.

Detalhes sobre regras de rede virtual

Esta secção descreve vários detalhes sobre as regras de rede virtual.

Apenas uma região geográfica

Cada Rede Virtual ponto final de serviço aplica-se apenas a uma região de Azure. O ponto final não permite que outras regiões aceitem a comunicação a partir da sub-rede.

Qualquer regra de rede virtual limita-se à região a que se aplica o seu ponto final subjacente.

Nível de servidor, não nível de base de dados

Cada regra de rede virtual aplica-se a todo o seu servidor Base de Dados do Azure para MySQL, e não apenas a uma determinada base de dados no servidor. Por outras palavras, a regra da rede virtual aplica-se ao nível do servidor e não ao nível da base de dados.

Funções de administração de segurança

Existe uma separação dos papéis de segurança na administração de Rede Virtual pontos finais de serviço. São necessárias medidas de cada uma das seguintes funções:

  • Administração de rede: Ligue o ponto final.
  • Administração de base de dados: Atualize a lista de controlo de acesso (ACL) para adicionar a sub-rede dada ao servidor Base de Dados do Azure para MySQL.

Alternativa Azure RBAC:

As funções de Administração de rede e de Administração de base de dados têm mais capacidades do que as necessárias para gerir as regras de rede virtuais. Apenas um subconjunto das suas capacidades é necessário.

Você tem a opção de usar o controle de acesso baseado em funções Azure (Azure RBAC) em Azure para criar um único papel personalizado que tem apenas o subconjunto necessário de capacidades. A função personalizada poderia ser utilizada em vez de envolver a rede Administração ou a base de dados Administração. A área de superfície da sua exposição à segurança é menor se adicionar um utilizador a uma função personalizada, em vez de adicionar o utilizador às outras duas principais funções de administrador.

Nota

Em alguns casos, os Base de Dados do Azure para MySQL e a sub-rede VNet estão em diferentes subscrições. Nestes casos, deve assegurar as seguintes configurações:

  • Ambas as subscrições devem estar no mesmo inquilino do Azure Ative Directory.
  • O utilizador tem as permissões necessárias para iniciar operações, tais como ativar pontos finais de serviço e adicionar uma sub-rede VNet ao servidor dado.
  • Certifique-se de que ambos os fornecedores de recursos Microsoft.Sql e Microsoft.DBforMySQL estão registados . Para mais informações, consulte o gestor de recursos-registo

Limitações

Para Base de Dados do Azure para MySQL, a funcionalidade de regras de rede virtual tem as seguintes limitações:

  • Uma Aplicação Web pode ser mapeada para um IP privado numa VNet/sub-rede. Mesmo que os pontos finais de serviço sejam ligados a partir da determinada VNet/sub-rede, as ligações da Web App para o servidor terão uma fonte IP pública Azure, e não uma fonte VNet/sub-rede. Para ativar a conectividade de uma Web App para um servidor que tenha regras de firewall VNet, deve permitir que os serviços do Azure acedam ao servidor no servidor.

  • Na firewall para o seu Base de Dados do Azure para MySQL, cada regra de rede virtual refere uma sub-rede. Todas estas sub-redes referenciadas devem ser aloiadas na mesma região geográfica que acolhe o Base de Dados do Azure para MySQL.

  • Cada Base de Dados do Azure para MySQL servidor pode ter até 128 entradas ACL para qualquer rede virtual.

  • As regras de rede virtuais aplicam-se apenas ao Azure Resource Manager redes virtuais; e não a redes de modelos de implementação clássicas.

  • Ligar os pontos finais do serviço de rede virtual ON para Base de Dados do Azure para MySQL utilizando a tag de serviço Microsoft.Sql também permite os pontos finais de todos os serviços da Base de Dados Azure: Base de Dados do Azure para MySQL, Base de Dados do Azure para PostgreSQL, SQL do Azure Base de Dados e Azure Synapse Analytics.

  • O suporte para pontos finais do serviço VNet destina-se apenas a servidores otimizados Fins Gerais e memória.

  • Se o Microsoft.Sql estiver ativado numa sub-rede, indica que só pretende utilizar as regras VNet para se ligar. As regras de recursos de firewall não-VNet nessa sub-rede não funcionarão.

  • Na firewall, as gamas de endereços IP aplicam-se aos seguintes itens de rede, mas as regras de rede virtuais não:

ExpressRoute

Se a sua rede estiver ligada à rede Azure através da utilização do ExpressRoute, cada circuito está configurado com dois endereços IP públicos no Microsoft Edge. Os dois endereços IP são utilizados para se conectarem aos Serviços microsoft, como ao Azure Storage, utilizando o Azure Public Peering.

Para permitir a comunicação do seu circuito para Base de Dados do Azure para MySQL, tem de criar regras de rede IP para os endereços IP públicos dos seus circuitos. Para encontrar os endereços IP públicos do seu circuito ExpressRoute, abra um bilhete de apoio com o ExpressRoute utilizando o portal do Azure.

Adicionar uma regra de Firewall VNET ao seu servidor sem ligar pontos finais de serviço VNET

Apenas definir uma regra de firewall VNet não ajuda a fixar o servidor ao VNet. Também tem de ligar os pontos finais do serviço VNet para que a segurança produza efeitos. Quando liga os pontos finais de serviço, a sua sub-rede VNet experimenta tempo de inatividade até completar a transição de Off para On. Tal é especialmente verdade no contexto de grandes VNets. Pode utilizar a bandeira IgnoreMissingServiceEndpoint para reduzir ou eliminar o tempo de inatividade durante a transição.

Pode definir a bandeira IgnoreMissingServiceEndpoint utilizando o Azure CLI ou portal.

Passos seguintes

Para artigos sobre a criação de regras VNet, consulte: