Partilhar via


Proteja o tráfego entre aplicativos lógicos padrão e redes virtuais do Azure usando pontos de extremidade privados

Aplica-se a: Aplicativos Lógicos do Azure (Padrão)

Para se comunicar de forma segura e privada entre seu fluxo de trabalho em um aplicativo lógico padrão e uma rede virtual do Azure, você pode configurar pontos de extremidade privados para tráfego de entrada e usar a integração de rede virtual para tráfego de saída.

Um ponto final privado é uma interface de rede que o liga de forma privada e segura a um serviço com a tecnologia Azure Private Link. Este serviço pode ser um serviço do Azure como o Azure Logic Apps, o Armazenamento do Microsoft Azure, o Azure Cosmos DB, o SQL ou o seu próprio Serviço do Private Link. O ponto final privado utiliza um endereço IP privado na rede virtual, o que leva de forma eficaz o serviço até à rede virtual.

Este artigo mostra como configurar o acesso através de pontos de extremidade privados para tráfego de entrada e integração de rede virtual para tráfego de saída.

Para obter mais informações, consulte a seguinte documentação:

Pré-requisitos

Você precisa ter uma rede virtual do Azure nova ou existente que inclua uma sub-rede sem delegações. Essa sub-rede é usada para implantar e alocar endereços IP privados da rede virtual.

Para obter mais informações, consulte a seguinte documentação:

Configurar o tráfego de entrada através de pontos de extremidade privados

Para proteger o tráfego de entrada para o seu fluxo de trabalho, conclua estas etapas de alto nível:

  1. Inicie seu fluxo de trabalho com um gatilho interno que pode receber e lidar com solicitações de entrada, como o gatilho Request ou o gatilho HTTP + Webhook. Esse gatilho configura seu fluxo de trabalho com um ponto de extremidade chamável.

  2. Adicione um ponto de extremidade privado para seu recurso de aplicativo lógico à sua rede virtual.

  3. Faça chamadas de teste para verificar o acesso ao ponto de extremidade. Para chamar seu fluxo de trabalho de aplicativo lógico depois de configurar esse ponto de extremidade, você deve estar conectado à rede virtual.

Considerações para o tráfego de entrada através de pontos de extremidade privados

  • Se acessado de fora da sua rede virtual, o modo de exibição de monitoramento não pode acessar as entradas e saídas de gatilhos e ações.

  • Os gatilhos de webhook da API gerenciada (push triggers) e as ações não funcionarão porque são executados na nuvem pública e não podem ser chamados para sua rede privada. Eles exigem um ponto de extremidade público para receber chamadas. Por exemplo, esses gatilhos incluem o gatilho Dataverse e o gatilho Event Grid.

  • Se você usar o gatilho do Office 365 Outlook, o fluxo de trabalho será acionado apenas de hora em hora.

  • A implantação do Visual Studio Code ou da CLI do Azure funciona somente de dentro da rede virtual. Você pode usar o Centro de Implantação para vincular seu aplicativo lógico a um repositório GitHub. Em seguida, você pode usar a infraestrutura do Azure para criar e implantar seu código.

    Para que a integração com o GitHub funcione, remova a WEBSITE_RUN_FROM_PACKAGE configuração do seu aplicativo lógico ou defina o valor como 0.

  • Habilitar o Private Link não afeta o tráfego de saída, que ainda flui pela infraestrutura do Serviço de Aplicativo.

Pré-requisitos para tráfego de entrada através de pontos de extremidade privados

Junto com a configuração de rede virtual nos pré-requisitos de nível superior, você precisa ter um fluxo de trabalho de aplicativo lógico padrão novo ou existente que comece com um gatilho interno que possa receber solicitações.

Por exemplo, o gatilho Solicitação cria um ponto de extremidade em seu fluxo de trabalho que pode receber e lidar com solicitações de entrada de outros chamadores, incluindo fluxos de trabalho. Esse ponto de extremidade fornece uma URL que você pode usar para chamar e acionar o fluxo de trabalho. Neste exemplo, as etapas continuam com o gatilho Request.

Para obter mais informações, consulte Receber e responder a solicitações HTTP de entrada usando os Aplicativos Lógicos do Azure.

Criar o fluxo de trabalho

  1. Se ainda não o fez, crie um aplicativo lógico baseado em locatário único e um fluxo de trabalho em branco.

  2. Depois que o designer abrir, adicione o gatilho Solicitação como a primeira etapa do seu fluxo de trabalho.

  3. Com base nos requisitos do cenário, adicione outras ações que você deseja executar em seu fluxo de trabalho.

  4. Quando tiver terminado, guarde o fluxo de trabalho.

Para obter mais informações, consulte Criar fluxos de trabalho de aplicativo lógico de locatário único em Aplicativos Lógicos do Azure.

Copie o URL do ponto de extremidade

  1. No menu de fluxo de trabalho, selecione Visão geral.

  2. Na página Visão geral, copie e salve a URL do fluxo de trabalho para uso posterior.

    Para acionar o fluxo de trabalho, ligue ou envie uma solicitação para essa URL.

  3. Certifique-se de que o URL funciona ligando ou enviando uma solicitação para o URL. Você pode usar qualquer ferramenta que queira enviar o pedido, por exemplo, Carteiro.

Configurar conexão de ponto de extremidade privado

  1. No menu de recursos do aplicativo lógico, em Configurações, selecione Rede.

  2. Na página Rede, na seção Configuração de tráfego de entrada, selecione o link ao lado de Pontos de extremidade privados.

  3. Na página Private Endpoint connections, selecione Add>Express ou Advanced.

    Para obter mais informações sobre a opção Avançado , consulte Criar um ponto de extremidade privado.

  4. No painel Adicionar Ponto de Extremidade Privado, forneça as informações solicitadas sobre o ponto de extremidade.

    Para obter mais informações, consulte as propriedades do Ponto Final Privado.

  5. Depois que o Azure provisionar com êxito o ponto de extremidade privado, tente chamar novamente a URL do fluxo de trabalho.

    Desta vez, você recebe um erro esperado 403 Forbidden , o que significa que o ponto de extremidade privado está configurado e funciona corretamente.

  6. Para certificar-se de que a conexão está funcionando corretamente, crie uma máquina virtual na mesma rede virtual que tenha o ponto de extremidade privado e tente chamar o fluxo de trabalho do aplicativo lógico.

Configurar o tráfego de saída usando a integração de rede virtual

Para proteger o tráfego de saída do seu aplicativo lógico, você pode integrar seu aplicativo lógico a uma rede virtual. Primeiro, crie e teste um fluxo de trabalho de exemplo. Em seguida, você pode configurar a integração de rede virtual.

Considerações para o tráfego de saída através da integração de rede virtual

  • A configuração da integração de rede virtual afeta apenas o tráfego de saída. Para proteger o tráfego de entrada, que continua a usar o ponto de extremidade compartilhado do Serviço de Aplicativo, revise Configurar o tráfego de entrada por meio de pontos de extremidade privados.

  • Não é possível alterar o tamanho da sub-rede após a atribuição, portanto, use uma sub-rede grande o suficiente para acomodar a escala que seu aplicativo pode alcançar. Para evitar problemas com a capacidade da sub-rede, use uma /26 sub-rede com 64 endereços. Se você criar a sub-rede para integração de rede virtual com o portal do Azure, deverá usar /27 como tamanho mínimo de sub-rede.

  • Para que o tempo de execução dos Aplicativos Lógicos do Azure funcione, você precisa ter uma conexão ininterrupta com o armazenamento de back-end. Se o armazenamento de back-end estiver exposto à rede virtual por meio de um ponto de extremidade privado, verifique se as seguintes portas estão abertas:

    Porta de origem Porta de destino Origem Destino Protocolo Propósito
    * 443 Sub-rede integrada com o aplicativo lógico padrão Conta de armazenamento TCP Conta de armazenamento
    * 445 Sub-rede integrada com o aplicativo lógico padrão Conta de armazenamento TCP Compartilhamento de arquivos SMB (Server Message Block)
  • Para que os conectores gerenciados hospedados no Azure funcionem, você precisa ter uma conexão ininterrupta com o serviço de API gerenciado. Com a integração de rede virtual, certifique-se de que nenhum firewall ou diretiva de segurança de rede bloqueie essas conexões. Se sua rede virtual usa um NSG (grupo de segurança de rede), UDR (tabela de rotas definida pelo usuário) ou um firewall, verifique se a rede virtual permite conexões de saída para todos os endereços IP do conector gerenciado na região correspondente. Caso contrário, os conectores gerenciados pelo Azure não funcionarão.

Para obter mais informações, consulte a seguinte documentação:

Criar e testar o fluxo de trabalho

  1. Se ainda não o fez, no portal do Azure, crie uma aplicação lógica baseada em inquilino único e um fluxo de trabalho em branco.

  2. Depois que o designer abrir, adicione o gatilho Solicitação como a primeira etapa do seu fluxo de trabalho.

  3. Adicione uma ação HTTP para chamar um serviço interno que não está disponível pela Internet e é executado com um endereço IP privado, como 10.0.1.3.

  4. Quando tiver terminado, guarde o fluxo de trabalho.

  5. No designer, execute manualmente o fluxo de trabalho.

    A ação HTTP falha, o que é por design e esperado porque o fluxo de trabalho é executado na nuvem e não pode acessar seu serviço interno.

Configurar a integração de rede virtual

  1. No portal do Azure, no menu de recursos do aplicativo lógico, em Configurações, selecione Rede.

  2. Na página Rede, na seção Configuração de tráfego de saída, selecione o link ao lado de Integração de rede virtual.

  3. Na página Integração de rede virtual, selecione Adicionar integração de rede virtual.

  4. No painel Adicionar integração de rede virtual, selecione a assinatura, a rede virtual que se conecta ao seu serviço interno e a sub-rede onde adicionar o aplicativo lógico. Quando terminar, selecione Conectar.

    Na página Integração de Rede Virtual, por padrão, a configuração de tráfego de saída da Internet é selecionada, que roteia todo o tráfego de saída pela rede virtual. Nesse cenário, a configuração do aplicativo chamada WEBSITE_VNET_ROUTE_ALL é ignorada.

    Para encontrar essa configuração de aplicativo, no menu de recursos do aplicativo lógico, em Configurações, selecione Variáveis de ambiente.

  5. Se utilizar o seu próprio servidor de nomes de domínio (DNS) com a sua rede virtual, adicione a definição WEBSITE_DNS_SERVER aplicação, se não existir, e defina o valor para o endereço IP do seu DNS. Se você tiver um DNS secundário, adicione outra configuração de aplicativo chamada WEBSITE_DNS_ALT_SERVER e defina o valor como o IP do DNS secundário.

  6. Depois que o Azure provisionar com êxito a integração de rede virtual, tente executar o fluxo de trabalho novamente.

    A ação HTTP agora é executada com êxito.

Próximos passos