Ligação em rede com o Private Link no Base de Dados do Azure para PostgreSQL – servidor flexível

O Azure Private Link permite-lhe criar endpoints privados para o seu servidor flexível Base de Dados do Azure para PostgreSQL, integrando o servidor na sua rede virtual. Essa funcionalidade é uma alternativa recomendada aos recursos de rede fornecidos pela integração de rede virtual.

Ao usar o Private Link, o tráfego entre a sua rede virtual e o serviço viaja através da rede backbone da Microsoft. Já não precisa de expor o seu serviço à Internet pública. Pode criar o seu próprio serviço de ligação privada na sua rede virtual e fornecê-lo aos seus clientes. A configuração e o consumo usando o Private Link são consistentes em todos os serviços de PaaS do Azure, de propriedade do cliente e de parceiros compartilhados.

Dois tipos de recursos do Azure expõem o Private Link aos utilizadores:

  • Pontos de extremidade privados (Microsoft.Network/PrivateEndpoints)
  • Serviços de Link Privado (Microsoft.Network/PrivateLinkServices)

Terminais privados

Um endpoint privado adiciona uma interface de rede a um recurso, atribuindo-lhe um endereço IP privado atribuído da sua rede virtual. Depois de o aplicar, pode comunicar com este recurso exclusivamente através da rede virtual. Para obter uma lista de serviços PaaS que suportam a funcionalidade Private Link, consulte a documentação do Private Link. Um ponto de extremidade privado é um endereço IP privado dentro de uma rede virtual específica e uma sub-rede.

Múltiplos endpoints privados em diferentes redes virtuais ou sub-redes, mesmo que tenham espaços de endereçamento sobrepostos, podem referenciar o mesmo serviço público.

O Private Link oferece os seguintes benefícios:

  • Aceder privadamente a serviços na plataforma Azure: Ligue a sua rede virtual usando endpoints privados a todos os serviços que pode usar como componentes de aplicação no Azure. Os prestadores de serviços podem prestar os seus serviços na sua própria rede virtual. Os consumidores podem aceder a esses serviços na sua rede virtual local. A plataforma Private Link lida com a conectividade entre o consumidor e os serviços através da rede de backbone do Azure.
  • Redes locais e emparelhadas: aceda a serviços em execução no Azure a partir do local através do emparelhamento privado da Rota Expressa do Azure, túneis de rede privada virtual (VPN) e redes virtuais emparelhadas utilizando pontos de extremidade privados. Não precisas de configurar o peering ExpressRoute Microsoft nem de atravessar a internet para aceder ao serviço. O Private Link fornece uma maneira segura de migrar cargas de trabalho para o Azure.
  • Proteção contra fuga de dados: Um endpoint privado é mapeado para uma instância de recurso PaaS em vez de todo o serviço. Os consumidores só podem se conectar ao recurso específico. O acesso a qualquer outro recurso no serviço está bloqueado. Este mecanismo fornece proteção contra riscos de fuga de dados.
  • Alcance global: Conecte-se privadamente a serviços em funcionamento noutras regiões: A rede virtual do consumidor pode estar na região A. Pode ligar-se a serviços atrás do Private Link na região B.

Os clientes podem se conectar ao ponto de extremidade privado a partir de:

  • A mesma rede virtual.
  • Uma rede virtual emparelhada na mesma região ou entre regiões.
  • Uma conexão de rede para rede entre regiões.

Os clientes também podem conectar-se a partir das instalações locais usando o ExpressRoute, emparelhamento privado ou túnel VPN. O diagrama simplificado a seguir mostra os casos de uso comuns.

Diagrama que mostra como o Private Link funciona com pontos de extremidade privados.

Eis uma matriz de disponibilidade entre funcionalidades para pontos finais privados num servidor flexível do Base de Dados do Azure para PostgreSQL.

Característica Disponibilidade Observações
Alta disponibilidade Yes Funciona como projetado.
Ler réplica Yes Funciona como projetado.
Réplica de leitura com pontos de extremidade virtuais Yes Funciona como projetado.
Restauração de um ponto específico no tempo Yes Funciona como projetado.
Permitir também o acesso público/à Internet com regras de firewall Yes Funciona como projetado.
Atualização da versão principal Yes Funciona como projetado.
Autenticação do Microsoft Entra Yes Funciona como projetado.
Gestão de pool de conexões com PGBouncer Yes Funciona como projetado.
DNS de ponto de extremidade privado Yes Funciona como concebido e documentado.
Encriptação com chaves geridas pelo cliente Yes Funciona como projetado.

Os pontos finais privados só podem ser configurados para servidores que criar depois de o Base de Dados do Azure para PostgreSQL passar a suportar o Private Link. Tens de configurar o modo de rede para não usar integração de rede virtual, mas sim acesso público.

Não podes configurar endpoints privados para servidores que criaste antes dessa data se configuraste o modo de rede para não usar integração de rede virtual, mas sim acesso público. Atualmente, não se oferece suporte para o uso de pontos de extremidade privados em servidores criados com integração de rede virtual.

Conectar-se a partir de uma VM do Azure em uma rede virtual pareada

Configure o emparelhamento de rede virtual para estabelecer conectividade a um servidor flexível do Base de Dados do Azure para PostgreSQL a partir de uma máquina virtual (VM) do Azure numa rede virtual emparelhada.

Conectar-se a partir de uma VM do Azure num ambiente de rede a rede

Configure uma ligação de gateway VPN rede para rede para estabelecer conectividade a um servidor flexível Base de Dados do Azure para PostgreSQL a partir de uma VM Azure numa região ou subscrição diferente.

Conecte-se a partir de um ambiente local por VPN

Para se ligar de um ambiente local ao servidor flexível Base de Dados do Azure para PostgreSQL, escolha e implemente uma das seguintes opções:

Quando usas endpoints privados, proteges o tráfego para um recurso de ligação privada. A plataforma valida ligações de rede e só permite ligações que acedam ao recurso de ligação privada especificado. Para aceder a mais subrecursos dentro do mesmo serviço Azure, precisas de mais endpoints privados com alvos correspondentes. Por exemplo, para o Armazenamento do Azure, precisas de endpoints privados separados para aceder aos subrecursos do ficheiro e do blob.

Os pontos de extremidade privados fornecem um endereço IP acessível de forma privada para o serviço do Azure, mas não necessariamente restringem o acesso à rede pública a ele. Todos os outros serviços do Azure requerem outro controlo de acesso. Estes controlos fornecem uma camada extra de segurança de rede aos seus recursos, ajudando a impedir o acesso ao serviço Azure associado ao recurso de ligação privada.

Os pontos finais privados suportam políticas de rede. As diretivas de rede permitem o suporte para grupos de segurança de rede (NSGs), rotas definidas pelo usuário (UDRs) e grupos de segurança de aplicativos (ASGs). Para obter mais informações sobre como ativar políticas de rede para um ponto final privado, veja Gerir políticas de rede para pontos finais privados. Para usar um ASG com um ponto de extremidade privado, consulte Configurar um grupo de segurança de aplicativo com um ponto de extremidade privado.

Quando você usa um ponto de extremidade privado, precisa se conectar ao mesmo serviço do Azure, mas usar o endereço IP do ponto de extremidade privado. A ligação ao endpoint privado requer definições separadas do sistema de nomes de domínio (DNS) para definir o endereço IP privado para o nome do recurso.

As zonas DNS privadas fornecem resolução de nomes de domínio dentro de uma rede virtual sem uma solução DNS personalizada. Você vincula as zonas DNS privadas a cada rede virtual para fornecer serviços DNS a essa rede.

As zonas DNS privadas fornecem nomes de zona DNS separados para cada serviço do Azure. Por exemplo, se você configurou uma zona DNS privada para o serviço de blob da conta de armazenamento na imagem anterior, o nome da zona DNS será privatelink.blob.core.windows.net. Consulte a documentação da Microsoft para ver mais nomes de zonas DNS privadas para todos os serviços do Azure.

Observação

As configurações da zona DNS privada do ponto de extremidade privado são geradas automaticamente apenas se utilizar o esquema de nomenclatura recomendado: privatelink.postgres.database.azure.com. Em servidores de acesso público recém-provisionados (não integrados em rede virtual), há uma alteração no layout do DNS. O FQDN do servidor agora se torna um registro CNAME na forma servername.postgres.database.azure.com que aponta para um registro A em um dos seguintes formatos:

  1. Se o servidor tiver um ponto de extremidade privado com uma zona DNS privada padrão vinculada, o registro A usará este formato: server_name.privatelink.postgres.database.azure.com.
  2. Se o servidor não tiver endpoints privados, o registo A usa este formato: server_name.rs-<15 semi-random bytes>.postgres.database.azure.com.

DNS híbrido para Azure e recursos locais

O DNS é uma consideração crítica de design na arquitetura geral da zona de aterragem. Algumas organizações podem querer usar seus investimentos existentes em DNS. Outros podem querer adotar recursos nativos do Azure para todas as suas necessidades de DNS.

Você pode usar o Resolvedor Privado de DNS do Azure junto com as zonas de DNS Privado do Azure para resolução de nomes entre locais. O DNS Private Resolver pode encaminhar um pedido DNS para outro servidor DNS e também fornece um endereço IP que um servidor DNS externo pode usar para encaminhar pedidos. Assim, servidores DNS externos on-premises podem resolver nomes localizados numa zona DNS Privado.

Para mais informações sobre a utilização do DNS Private Resolver com um encaminhador DNS local para encaminhar tráfego DNS para DNS do Azure, veja:

As soluções descritas estendem uma rede local que já tem uma solução DNS para resolver recursos na Azure.Microsoft arquitetura.

Normalmente alojas zonas DNS privadas centralmente na mesma subscrição do Azure onde implementas a rede virtual do hub. Essa prática de hospedagem central é impulsionada pela resolução de nomes DNS entre instalações e outras necessidades de resolução central de DNS, como o Microsoft Entra. Na maioria dos casos, apenas os administradores de rede e identidade têm permissões para gerenciar registros DNS nas zonas.

Nessa arquitetura, configura-se os seguintes componentes:

  • Os servidores DNS locais têm encaminhadores condicionais configurados para cada zona DNS pública dos pontos finais privados, apontando para o Resolvedor de DNS Privado hospedado na rede virtual do hub.
  • O Resolvedor de DNS Privado hospedado na rede virtual do hub usa o DNS fornecido pelo Azure (168.63.129.16) como um encaminhador.
  • Liga a rede virtual do hub aos nomes das zonas DNS Privado para serviços do Azure (como privatelink.postgres.database.azure.com, para um Servidor Flexível do Banco de Dados do Azure para PostgreSQL).
  • Todas as redes virtuais Azure utilizam o DNS Privado Resolver alojado na rede virtual hub.
  • O DNS Privado Resolver não é autoritativo para os domínios corporativos de um cliente porque é apenas um encaminhador (por exemplo, nomes de domínio Microsoft Entra). Deve ter reenviadores do endpoint de saída para os domínios empresariais do cliente, apontando para os servidores DNS locais ou para servidores DNS implementados no Azure com autoridade sobre essas zonas.

Por padrão, as diretivas de rede são desabilitadas para uma sub-rede em uma rede virtual. Para usar políticas de rede como suporte a UDRs e NSGs, deve ativar o suporte a políticas de rede para a sub-rede. Esta configuração aplica-se apenas a endpoints privados dentro da sub-rede. Essa configuração afeta todos os pontos de extremidade privados dentro da sub-rede. Para outros recursos na sub-rede, o acesso é controlado com base em regras de segurança no NSG.

Você pode habilitar políticas de rede somente para NSGs, para UDRs ou para ambos. Para obter mais informações, consulte Gerir políticas de rede para endpoints privados.

As limitações para NSGs e pontos de extremidade privados estão listadas em O que é um ponto de extremidade privado?.

Importante

Proteção contra fuga de dados: um endpoint privado está associado a uma instância de um recurso PaaS em vez de a todo o serviço. Os consumidores só podem se conectar ao recurso específico. O acesso a qualquer outro recurso no serviço está bloqueado. Este mecanismo fornece proteção básica contra riscos de vazamento de dados.

As seguintes situações e resultados são possíveis quando você usa o Private Link em combinação com regras de firewall:

  • Se não configurar nenhuma regra de firewall, por defeito, o tráfego não pode aceder ao servidor flexível Base de Dados do Azure para PostgreSQL.

  • Se você configurar o tráfego público ou um ponto de extremidade de serviço e criar pontos de extremidade privados, diferentes tipos de tráfego de entrada serão autorizados pelo tipo correspondente de regra de firewall.

  • Se não configurar nenhum acesso público nem qualquer ponto final de serviço e criar pontos finais privados, o servidor flexível do Base de Dados do Azure para PostgreSQL só fica acessível através de pontos finais privados. Se não configurar tráfego público ou um endpoint de serviço, depois de todos os endpoints privados aprovados serem rejeitados ou eliminados, nenhum tráfego poderá aceder ao servidor flexível Base de Dados do Azure para PostgreSQL.

Troubleshoot

Quando utiliza endpoints Private Link com um servidor flexível Base de Dados do Azure para PostgreSQL, podem surgir problemas de conectividade devido a configurações incorretas ou restrições de rede. Para solucionar esses problemas, verifique a configuração de pontos de extremidade privados, configurações de DNS, NSGs (grupos de segurança de rede) e tabelas de rotas. Abordar sistematicamente essas áreas pode ajudá-lo a identificar e resolver problemas comuns, garantindo conectividade perfeita e acesso seguro ao seu banco de dados.

Problemas de conectividade com redes privadas baseadas em endpoints

Se tiver problemas de conectividade ao utilizar redes privadas baseadas em endpoints, verifique as seguintes áreas:

  • Verifique as atribuições de endereços IP: Certifique-se de que o endpoint privado tem o endereço IP correto atribuído e que não entra em conflito com outros recursos. Para mais informações sobre endpoints privados e IP, consulte Gerenciar endpoints privados do Azure.
  • Verifique os NSGs: Revise as regras NSG para a sub-rede do endpoint privado para garantir que o tráfego necessário é permitido e que não existem regras conflitantes. Para obter mais informações sobre NSGs, consulte Grupos de segurança de rede.
  • Validar a configuração da tabela de rotas: verifique se as tabelas de rotas associadas à sub-rede do ponto de extremidade privado e os recursos conectados estão configurados corretamente com as rotas apropriadas.
  • Usar monitoramento e diagnóstico de rede: use o Observador de Rede do Azure para monitorar e diagnosticar o tráfego de rede usando ferramentas como o Monitor de Conexão ou a Captura de Pacotes. Para mais informações sobre diagnósticos de rede, consulte O que é o Observador de Rede do Azure?.

Para mais informações sobre a resolução de problemas de pontos finais privados, consulte Resolver problemas de conectividade de pontos finais privados do Azure.

Resolução DNS com rede privada baseada em endpoint

Se tiver problemas de resolução DNS ao usar redes privadas baseadas em endpoints, verifique as seguintes áreas:

  • Validar resolução de DNS: Verifique se o servidor DNS ou serviço usado pelo ponto de extremidade privado e os recursos conectados estão a funcionar corretamente. Verifique se as configurações de DNS do ponto de extremidade privado estão corretas. Para mais informações sobre pontos finais privados e definições da zona DNS, consulte Valores da zona DNS privada para pontos finais privados do Azure.
  • Limpe o cache DNS: limpe o cache DNS no ponto de extremidade privado ou na máquina cliente para garantir que as informações DNS mais recentes sejam recuperadas e para evitar erros inconsistentes.
  • Analisar logs DNS: reveja os logs DNS em busca de mensagens de erro ou padrões incomuns, como consultas falhadas, erros de servidor ou timeouts. Para mais informações sobre métricas DNS, consulte métricas e alertas do DNS do Azure.

Limitações e considerações

  • Só pode configurar endpoints privados para servidores criados após a introdução do Private Link. Servidores que utilizam integração com rede virtual (VNet) não são elegíveis para configuração de endpoints privados.

  • As restrições de rede do Azure, e não o próprio serviço de base de dados, limitam o número de endpoints privados. Especificamente, limitam o número de endpoints privados que podes injetar numa determinada sub-rede dentro de um VNet.

  • As máquinas virtuais podem ligar-se à base de dados através de endpoints privados, desde que estejam corretamente configuradas dentro da mesma rede virtual ou tenham o encaminhamento adequado.