Uso de pontos de extremidade privados para Aplicativo Web do Azure

Importante

O ponto de extremidade privado está disponível para aplicativos Web do Windows e do Linux, conteinerizados ou não, hospedados nestes Planos do Serviço de Aplicativo: PremiumV2, PremiumV3, IsolatedV2, Functions Premium (às vezes chamado de plano Premium do Elastic).

Você pode usar o Ponto de extremidade privado para o Azure Web App para permitir que os clientes localizados na sua rede privada acessem o aplicativo com segurança pelo link privado. O ponto de extremidade privado usa um endereço IP do espaço de endereço da VNet do Azure. O tráfego de rede entre um cliente em sua rede privada e o Web App atravessa a VNet e um Link Privado na rede principal da Microsoft, eliminando a exposição da Internet pública.

O uso do Ponto de extremidade privado para o seu aplicativo da Web permite:

  • Proteja seu Web App configurando o ponto de extremidade privado, eliminando a exposição pública.
  • Conecte-se com segurança ao Web App a partir de redes locais que se conectam à VNet usando uma conexão privada VPN ou ExpressRoute.
  • Evite qualquer exfiltração de dados da sua VNet.

Se você precisar apenas de uma conexão segura entre sua VNet e seu aplicativo Web, um ponto de extremidade de serviço será a solução mais simples. Se você também precisar acessar o aplicativo Web do local por meio de um Gateway do Azure, uma VNet emparelhada regionalmente ou uma VNet emparelhada globalmente, o Ponto de Extremidade Privado será a solução.

Para saber mais, confira Ponto de extremidade de serviço.

Visão geral conceitual

Um ponto de extremidade privado é uma NIC (interface de rede especial) para seu aplicativo Web do Azure em uma sub-rede em sua rede virtual (VNet). Quando você cria um ponto de extremidade privado para seu aplicativo Web, ele fornece conectividade segura entre clientes em sua rede privada e seu aplicativo Web. O ponto de extremidade privado recebe um endereço IP do intervalo de endereços IP de sua VNet. A conexão entre o ponto de extremidade privado e o aplicativo Web usa um link privado seguro. O ponto de extremidade privado é usado apenas para fluxos de entrada no seu aplicativo da Web. Os fluxos de saída não usarão esse ponto de extremidade privado. Você pode injetar fluxos de saída na sua rede em uma sub-rede diferente por meio do recurso de integração da VNet.

Cada slot de um aplicativo é configurado separadamente. Você pode conectar até 100 pontos de extremidade privados por slot. Não é possível compartilhar um ponto de extremidade privado entre slots.

A sub-rede na qual você conecta o ponto de extremidade privado pode ter outros recursos, não é necessária uma sub-rede vazia dedicada. Você também pode implantar o ponto de extremidade privado em uma região diferente do aplicativo Web.

Observação

O recurso de integração da VNet não pode usar a mesma sub-rede que o Ponto de Extremidade Privado; essa é uma limitação do recurso de integração da VNet.

Do ponto de vista da segurança:

  • Ao habilitar pontos de extremidade privados para seu aplicativo Web, você desabilita todo o acesso público.
  • Você pode habilitar vários pontos de extremidade privados em outros VNets e sub-redes, incluindo VNets em outras regiões.
  • O endereço IP da NIC do ponto de extremidade privado deve ser dinâmico, mas permanecerá o mesmo até que você exclua o ponto de extremidade privado.
  • A NIC do ponto de extremidade privado não pode ter um NSG associado.
  • A sub-rede que hospeda o ponto final privado pode ter um NSG associado, mas você deve desativar a imposição de políticas de rede para o ponto final privado: consulte Desativar diretivas de rede para pontos finais privados. Como resultado, você não pode filtrar por nenhum NSG o acesso ao seu endpoint privado.
  • Quando você ativa o Ponto de extremidade privado no seu Web App, a configuração de restrições de acesso do Web App não é avaliada.
  • Você pode eliminar o risco de vazamento de dados da VNet removendo todas as regras de NSG em que o destino é marca Internet ou serviços do Azure. Ao implantar um ponto de extremidade privado para um aplicativo da Web, você só pode acessar esse aplicativo da Web específico por meio do ponto de extremidade privado. Se você tiver outro aplicativo da Web, implante outro ponto de extremidade privado dedicado para esse outro aplicativo da Web.

Nos logs HTTP da Web do seu Web App, você encontrará o IP de origem do cliente. Esse recurso é implementado usando o protocolo TCP Proxy, encaminhando a propriedade IP do cliente até o Web App. Para obter mais informações, consulte Obtendo informações de conexão usando o TCP Proxy v2.

Web App Private Endpoint global overview

DNS

Quando você usa o Ponto de Extremidade Privado para o aplicativo Web, a URL solicitada deve corresponder ao nome do seu aplicativo Web. Por padrão, mywebappname.azurewebsites.net.

Por padrão, sem o Ponto de Extremidade Privado, o nome público do seu aplicativo Web é um nome canônico para o cluster. Por exemplo, a resolução de nomes será:

Nome Tipo Valor
mywebapp.azurewebsites.net CNAME clustername.azurewebsites.windows.net
clustername.azurewebsites.windows.net CNAME cloudservicename.cloudapp.net
cloudservicename.cloudapp.net Um 40.122.110.154

Quando você implanta um Ponto de Extremidade Privado, atualizamos a entrada DNS para apontar para o nome canônico mywebapp.privatelink.azurewebsites.net. Por exemplo, a resolução de nomes será:

Nome Tipo Valor Comentário
mywebapp.azurewebsites.net CNAME mywebapp.privatelink.azurewebsites.net
mywebapp.privatelink.azurewebsites.net CNAME clustername.azurewebsites.windows.net
clustername.azurewebsites.windows.net CNAME cloudservicename.cloudapp.net
cloudservicename.cloudapp.net Um 40.122.110.154 <--Esse IP público não é seu ponto de extremidade privado; você receberá um erro 403

Você deve configurar um servidor DNS privado ou uma zona privada de DNS do Azure, para testes, é possível modificar a entrada de host do seu computador de teste. A zona DNS que você precisa criar é: privatelink.azurewebsites.net. Marque o registro do seu aplicativo Web com um registro A e o IP do Ponto de Extremidade Privado. Por exemplo, a resolução de nomes será:

Nome Tipo Valor Comentário
mywebapp.azurewebsites.net CNAME mywebapp.privatelink.azurewebsites.net <--O Azure cria essa entrada no DNS Público do Azure para apontar o serviço de aplicativo para o link privado e isso é gerenciado por nós
mywebapp.privatelink.azurewebsites.net Um 10.10.10.8 <--Você gerencia essa entrada em seu sistema DNS para apontar para o endereço IP do seu ponto de extremidade privado

Após essa configuração de DNS, você pode acessar seu aplicativo Web de forma privada com o nome padrão mywebappname.azurewebsites.net. Você deve usar esse nome, pois o certificado padrão é emitido para *.azurewebsites.net.

Se você precisar usar um nome DNS personalizado, deverá adicionar o nome personalizado em seu aplicativo Web. O nome personalizado deve ser validado como qualquer nome personalizado, usando a resolução de DNS público. Para mais informações, consulte validação DNS personalizada.

Para o console do Kudu ou a API REST do Kudu (implantação com os agentes auto-hospedados do Azure DevOps, por exemplo), deve-se criar dois registros na zona privada do DNS do Azure ou no servidor DNS personalizado que apontam para o IP do ponto de extremidade privado. A primeira é para seu aplicativo Web, o segundo é para o SCM do seu aplicativo Web.

Nome Tipo Valor
mywebapp.privatelink.azurewebsites.net Um PrivateEndpointIP
mywebapp.scm.privatelink.azurewebsites.net Um PrivateEndpointIP

Consideração especial do ASEv3

Para habilitar o ponto de extremidade privado para o Aplicativo Web hospedado em um plano IsolatedV2 (ASEv3), é necessário habilitar o suporte ao ponto de extremidade privado no nível do ASE. É possível ativar o recurso pelo portal do Azure no painel de configuração do ASE ou por meio da CLI a seguir:

az appservice ase update --name myasename --allow-new-private-endpoint-connections true

Preços

Para obter detalhes de preço, confira Preço do Link Privado do Azure.

Limitações

  • Ao usar a Função do Azure no Elastic Premium Plan com ponto de extremidade privado, para executar ou executar a função no portal da Web do Azure, você deve ter acesso direto à rede ou receberá um erro HTTP 403. Em outras palavras, seu navegador deve ser capaz de acessar o Ponto de Extremidade Privado para executar a função no portal da Web do Azure.
  • Você pode conectar até 100 Pontos de Extremidade Privados a um Aplicativo Web específico.
  • A funcionalidade de Depuração Remota não está disponível quando o Ponto de Extremidade Privado está habilitado para o aplicativo Web. A recomendação é implantar o código em um slot e depurá-lo remotamente.
  • O acesso ao FTP é fornecido por meio do endereço IP público de entrada. O Ponto de Extremidade Privado não dá suporte ao acesso FTP ao aplicativo Web.
  • O SSL baseado em IP não tem suporte com pontos de extremidade privados.

Estamos melhorando o recurso de link privado e o ponto de extremidade privado regularmente, marque este artigo para obter informações atualizadas sobre as limitações.

Próximas etapas