Configura el aislamiento de red seguro

A partir del 1 de septiembre de 2023, se recomienda encarecidamente emplear el método de etiqueta de servicio de Azure para el aislamiento de red. El uso de DL-ASE debe limitarse a escenarios muy específicos. Antes de implementar esta solución en un entorno de producción, se recomienda consultar al equipo de soporte técnico para obtener instrucciones.

Puedes agregar aislamiento de red a un bot de extensión de Direct Line de App Service existente. Un punto de conexión privado permite que el bot aislado de red se comunique con los servicios de Bot Framework necesarios para que el bot se pueda ejecutar correctamente mientras se limita a la red virtual.

Para agregar aislamiento de red al bot:

  1. Usa una red virtual y configura la red para evitar el tráfico saliente. En este momento, el bot perderá la capacidad de comunicarse con otros servicios de Bot Framework.
  2. Configuración de puntos de conexión privados para restaurar la conectividad.
  3. Reinicia App Service y prueba el bot dentro de la red aislada.
  4. Deshabilita el acceso de la red pública a tu bot.

Requisitos previos

  • Una cuenta de Azure. Si aún no tiene una, cree una cuenta gratuita antes de empezar.
    • Una suscripción con permiso para crear recursos de Azure Virtual Network y grupo de seguridad de red.
  • Un bot de extensión de Direct Line de App Service en funcionamiento.
    • El bot usa el SDK de Bot Framework para C# o JavaScript, versión 4.16 o posterior.
    • El bot tiene habilitadas canalizaciones con nombre.
    • App Service del bot tiene habilitada la extensión Direct Line de App Service.
  • Un control Chat en web conectado al cliente de Direct Line del bot.

Para confirmar que el bot existente está configurado correctamente:

  1. En un explorador, abre el punto de conexión de cliente de Direct Line para el bot. Por ejemplo, https://<your-app_service>.azurewebsites.net/.bot.

  2. Comprueba que la página muestra lo siguiente:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
    
    • v muestra la versión de compilación de la extensión de App Service de Direct Line.
    • k indica si la extensión pudo leer una clave de extensión de su configuración.
    • inicializado indica si la extensión pudo descargar metadatos del bot desde el servicio de Bot de Azure AI.
    • ib indica si la extensión pudo establecer una conexión entrante al bot.
    • ob indica si la extensión pudo establecer una conexión saliente desde el bot.

Creación de una red virtual

  1. Vaya a Azure Portal.
  2. Crea un recurso de Azure Virtual Network en la misma región que tu bot.
  3. Abre el recurso de App Service para el bot y habilita la integración de la red virtual.
  4. Cree una segunda subred. Usarás la segunda subred más adelante para agregar el punto de conexión privado.

Denegar el tráfico saliente de la red

  1. Abre el grupo de seguridad de red asociado con tu primera subred.
  2. En Configuración, seleccione Reglas de seguridad de salida.
    1. En la lista de reglas de seguridad de salida, habilita DenyAllInternetOutbound.
  3. Ve al recurso de App Service para el bot.
  4. Reinicie el App Service.

Comprobación de que la conectividad está interrumpida

  1. En una pestaña independiente del explorador, abre el punto de conexión de cliente de Direct Line para el bot. Por ejemplo, https://<your-app_service>.azurewebsites.net/.bot.

  2. Comprueba que la página muestra lo siguiente:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":false}
    

    El valor de initialized debe ser false, ya que la extensión de App Service y App Service no pueden conectarse a otros servicios de Bot Framework para inicializarse a sí mismo. El bot ahora está aislado en una red virtual para las conexiones salientes.

Crea un punto de conexión privado

  1. Vaya a Azure Portal.
  2. Abre el recurso de Azure Bot para tu bot.
  3. En Configuración, seleccione Redes.
    1. En la pestaña Acceso privado, selecciona Crear una conexión de punto de conexión privado.
      1. En la pestaña Recursos, selecciona Subrecurso de destino y Bot en la lista.
      2. En la pestaña Red virtual, selecciona la red virtual y la segunda subred que creaste.
      3. Crea los puntos de conexión privados.

Adición del punto de conexión privado al servicio de aplicaciones del bot

  1. Abre el recurso Azure App Service para el bot.
  2. En Configuración, seleccione Configuración.
    1. En la pestaña Configuración de la aplicación, seleccione Nueva configuración de la aplicación.
      1. Establezca Nombre en DirectLineExtensionABSEndpoint.
      2. Establece Valor en la dirección URL del punto de conexión privado, por ejemplo, https://<your_azure_bot>.privatelink.directline.botframework.com/v3/extension.
      3. Guarda la configuración nueva.

Reinicia el servicio de aplicaciones y comprueba que se restaure la conectividad

  1. Reinicia el servicio de aplicaciones para el bot.

  2. En una pestaña independiente del explorador, abre el punto de conexión de cliente de Direct Line para el bot. Por ejemplo, https://<your-app_service>.azurewebsites.net/.bot.

  3. Comprueba que la página muestra lo siguiente:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
    

    El valor de initialized debe ser true.

  4. Usa el control Chat en web conectado al cliente de Direct Line del bot para interactuar con el bot dentro de la red privada.

Si el punto de conexión privado no funciona correctamente, puedes agregar una regla para permitir el tráfico saliente específicamente al servicio de Bot de Azure AI.

Nota:

Esto hará que la red virtual esté un poco menos aislada.

  1. Abre el grupo de seguridad de red asociado con tu primera subred.
  2. En Configuración, seleccione Reglas de seguridad de salida.
    1. En la lista de reglas de seguridad de salida, habilita AllowAzureBotService.
  3. Ve al recurso de App Service para el bot.
  4. Reinicie el App Service.

Deshabilita del acceso de red pública para tu bot

Puedes bloquear el acceso público al servicio de Bot de Azure AI y permitir solo el acceso a través de un punto de conexión privado. Puedes deshabilitar el acceso de red del servicio de Bot de Azure AI en Azure Portal.

Sugerencia

Esto no configurará los canales de Teams. Ningún otro canal (excepto Direct Line) se puede configurar o actualizar en Azure Portal.

  1. Vaya a Azure Portal.
  2. Abre el servicio de aplicaciones para el bot.
  3. Deshabilita el acceso a una red pública.

Información adicional

Configuración de redes virtuales

Tienes un par de opciones para configurar el bot para una red virtual.

  • Crea una red virtual y, a continuación, habilita Azure App Service dentro de la red. Esta es la opción usada en este artículo.
  • Crea un App Service Environment y agrega un plan de App Service en el entorno.
  1. Cree una red virtual.
  2. Habilita la integración de Azure App Service con la red virtual en Azure App Service.

Estos son los pasos que se usan en este artículo, como se describe en la sección Creación de una red virtual.

Para más información, consulta Creación de una red virtual mediante Azure Portal y Habilitación de la integración de red virtual en Azure App Service.