Configurar Isolamento de rede
A partir de 1º de setembro de 2023, é altamente recomendável empregar o método de Marca de Serviço do Azure para isolamento de rede. A utilização do DL-ASE deve ser limitada a cenários altamente específicos. Antes de implementar essa solução em um ambiente de produção, recomendamos consultar sua equipe de suporte para obter orientação.
Você pode adicionar isolamento de rede a um bot de extensão do Serviço de Aplicativo do Direct Line existente. Um ponto de extremidade privado permite que o bot isolado da rede se comunique com os serviços necessários do Bot Framework para que o bot possa ser executado corretamente enquanto estiver limitado à rede virtual.
Para adicionar isolamento de rede ao bot:
- Use uma rede virtual e configure a rede para impedir o tráfego de saída. Neste ponto, seu bot perderá a capacidade de se comunicar com outros serviços do Bot Framework.
- Configurar pontos de extremidade privados para restaurar a conectividade.
- Reinicie o serviço de aplicativo e teste o bot na rede isolada.
- Desabilite o acesso à rede pública para o bot.
Pré-requisitos
- Uma conta do Azure. Se ainda não tiver uma, crie uma conta gratuita antes de começar.
- Uma assinatura com permissão para criar recursos de rede virtual e grupo de segurança de rede do Azure.
- Um Bot que funciona com a extensão de serviço de aplicativo do Direct Line.
- O bot usa o SDK do Bot Framework para C# ou JavaScript, versão 4.16 ou posterior.
- Seu bot tem pipes nomeados habilitados.
- O serviço de aplicativo do bot tem a extensão do Serviço de Aplicativo de Direct Line habilitada.
- Um controle de WebChat conectado ao cliente do Direct Line do bot.
Para confirmar se o bot existente está configurado corretamente:
Em um navegador, abra o ponto de extremidade do cliente do Direct Line para seu bot. Por exemplo,
https://<your-app_service>.azurewebsites.net/.bot
.Verifique se a página exibe o seguinte:
{"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
- v exibe a versão de build da Extensão de Serviço de Aplicativo do Direct Line.
- k indica se a extensão foi capaz de ler uma chave de extensão em sua configuração.
- initialized indica se a extensão foi capaz de fazer download dos metadados de bot do Serviço de Bot de IA do Azure.
- ib indica se a extensão foi capaz de estabelecer uma conexão de entrada com o bot.
- ob indica se a extensão foi capaz de estabelecer uma conexão de saída com o bot.
Criar uma rede virtual
- Acesse o portal do Azure.
- Crie um recurso de rede virtual do Azure na mesma região que o bot.
- Esse script cria tanto uma rede virtual com uma sub-rede.
- Não crie nenhuma máquina virtual.
- Para obter instruções gerais, confira Criar uma rede virtual usando o portal do Azure.
- Abra o recurso de serviço de aplicativo para seu bot e habilite a integração de rede virtual.
- Use a rede virtual e a sub-rede da etapa anterior.
- Para obter instruções gerais, confira Habilitar a integração de rede virtual no Serviço de Aplicativo do Azure.
- Crie uma segunda sub-rede. Você usará a segunda sub-rede posteriormente para adicionar o ponto de extremidade privado.
Negar tráfego de saída da sua rede
- Abra o grupo de segurança de rede associado à primeira sub-rede.
- Se nenhum grupo de segurança estiver configurado, crie um. Para obter mais informações, confira Grupos de segurança de rede.
- Em Configurações, escolha Regras de segurança de saída.
- Na lista de regras de segurança de saída, habilite DenyAllInternetOutbound.
- Acesse o recurso de serviço de aplicativo do seu bot.
- Reinicie o Serviço de Aplicativo.
Verifique se a conectividade foi interrompida
Em uma guia separada do navegador, abra o ponto de extremidade do cliente do Direct Line do bot. Por exemplo,
https://<your-app_service>.azurewebsites.net/.bot
.Verifique se a página exibe o seguinte:
{"v":"123","k":true,"ib":true,"ob":true,"initialized":false}
O valor de
initialized
deve serfalse
, porque o serviço de aplicativo e a extensão de serviço de aplicativo não conseguem se conectar a outros serviços Bot Framework Service para inicializar-se. Agora, seu bot está isolado em uma rede virtual para conexões de saída.
Crie seus pontos de extremidade privados
- Acesse o portal do Azure.
- Abra o recurso de Bot do Azure para o seu bot.
- Em Configurações, selecione Rede.
- Na guia Acesso privado, selecione Criar um ponto de extremidade privado.
- Na guia Recursos, em Sub-recurso de destino, selecione Bot na lista.
- Na guia Rede Virtual, selecione a rede virtual e a segunda sub-rede que você criou.
- Salve seu ponto de extremidade privado.
- Na guia Acesso privado, selecione Criar um ponto de extremidade privado.
Adicionar seu ponto de extremidade privado ao serviço de aplicativo do bot
- Abra o recurso Serviço de Aplicativo do Azure para o seu bot.
- Em Configurações, escolha Configuração.
- Na guia Configurações de aplicativo, selecione Novas configurações de aplicativo.
- Defina Nome como
DirectLineExtensionABSEndpoint
. - Defina Valor como a URL de ponto de extremidade privado, por exemplo,
https://<your_azure_bot>.privatelink.directline.botframework.com/v3/extension
. - Salve as novas configurações.
- Defina Nome como
- Na guia Configurações de aplicativo, selecione Novas configurações de aplicativo.
Reinicie o serviço de aplicativo e verifique se a conectividade foi restaurada
Reinicie o serviço de aplicativo do seu bot.
Em uma guia separada do navegador, abra o ponto de extremidade do cliente do Direct Line do bot. Por exemplo,
https://<your-app_service>.azurewebsites.net/.bot
.Verifique se a página exibe o seguinte:
{"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
O valor de
initialized
deve sertrue
.Use o controle de WebChat conectado ao cliente do Direct Line do bot para interagir com o bot dentro da rede privada.
Se seu ponto de extremidade privado não funcionar corretamente, você poderá adicionar uma regra para permitir o tráfego de saída especificamente para o Serviço de Bot de IA do Azure.
Observação
Isso fará com que sua rede virtual fique um pouco menos isolada.
- Abra o grupo de segurança de rede associado à primeira sub-rede.
- Em Configurações, escolha Regras de segurança de saída.
- Na lista de regras de segurança de saída, habilite AllowAzureBotService.
- Acesse o recurso de serviço de aplicativo do seu bot.
- Reinicie o Serviço de Aplicativo.
Desabilitar o acesso à rede pública no seu bot
Você pode bloquear o acesso público ao seu Serviço de Bot de IA do Azure e permitir o acesso somente por meio do Ponto de Extremidade Privado. Você pode desabilitar o acesso à rede do Serviço de Bot de IA do Azure no portal do Azure.
Dica
Isso desconfigurará os canais do Teams. Nenhum outro canal (exceto o Direct Line) pode ser configurado ou atualizado no portal do Azure.
- Acesse o portal do Azure.
- Abra o serviço de aplicativo do seu bot.
- Desabilite o acesso a redes públicas.
Informações adicionais
Configuração da rede virtual
Você tem algumas opções para configurar seu bot para uma rede virtual.
- Crie uma rede virtual e habilite o Serviço de Aplicativo do Azure na rede. Essa opção é usada neste artigo.
- Crie um ambiente do Serviço de Aplicativo e adicione um Plano do Serviço de Aplicativo no ambiente.
- Crie uma rede virtual.
- Habilitar a integração do Serviço de Aplicativo do Azure na rede virtual.
Estas são as etapas usadas neste artigo, conforme descrito na seção Criar uma rede virtual.
Para obter mais informações, confira Criar uma rede virtual usando o portal do Azure e Habilitar a integração de rede virtual no Serviço de Aplicativo do Azure.