Настройка сетевой изоляции

С 1 сентября 2023 г. настоятельно рекомендуется использовать метод тега службы Azure для сетевой изоляции. Использование DL-ASE должно быть ограничено конкретными сценариями. Прежде чем реализовать это решение в рабочей среде, мы рекомендуем проконсультироваться с вашей группой поддержки для получения рекомендаций.

Вы можете добавить сетевую изоляцию в существующий бот расширения Direct Line Служба приложений. Частная конечная точка позволяет вашему сетевому изолированному боту взаимодействовать с необходимыми службами Bot Framework, чтобы бот смог правильно выполняться при ограничении виртуальной сети.

Чтобы добавить сетевую изоляцию в бот, выполните следующее:

  1. Используйте виртуальную сеть и настройте сеть для предотвращения исходящего трафика. На этом этапе бот потеряет возможность взаимодействовать с другими службами Bot Framework.
  2. Настройте частные конечные точки для восстановления подключения.
  3. Перезапустите службу приложений и протестируйте бота в изолированной сети.
  4. Отключите доступ к общедоступной сети боту.

Необходимые компоненты

  • Учетная запись Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.
    • Подписка с разрешением на создание ресурсов группы безопасности сети и azure виртуальная сеть.
  • Рабочий бот расширения Direct Line Служба приложений.
    • Бот использует пакет SDK Bot Framework для C# или JavaScript версии 4.16 или более поздней.
    • Бот включил именованные каналы.
    • Служба приложений бота включает расширение Direct Line Служба приложений.
  • Элемент управления Веб-чат, подключенный к клиенту Direct Line бота.

Чтобы убедиться, что существующий бот настроен правильно:

  1. В браузере откройте конечную точку клиента Direct Line для бота. Например, https://<your-app_service>.azurewebsites.net/.bot.

  2. Проверьте, отображается следующая страница:

    {"v":"123","k":true,"ib":true,"ob":true,"initialized":true}
    
    • В v показана версия сборки расширения Direct Line Служба приложений.
    • k указывает, удалось ли расширение считывать ключ расширения из конфигурации.
    • инициализировано указывает, удалось ли расширение скачать метаданные бота из Служба Bot ИИ Azure.
    • ib указывает, удалось ли расширение установить входящее подключение к боту.
    • ob указывает, удалось ли расширение установить исходящее подключение от бота.

Создание виртуальной сети

  1. Перейдите на портал Azure.
  2. Создайте ресурс Azure виртуальная сеть в том же регионе, что и бот.
  3. Откройте ресурс службы приложений для бота и включите интеграцию виртуальной сети.
  4. Создайте вторую подсеть. Вы будете использовать вторую подсеть позже, чтобы добавить частную конечную точку.

Запрет исходящего трафика из сети

  1. Откройте группу безопасности сети, связанную с первой подсетью.
  2. В разделе Параметры выберите Правила безопасности для исходящего трафика.
    1. В списке правил безопасности для исходящего трафика включите DenyAllInternetOutbound.
  3. Перейдите к ресурсу службы приложений для бота.
  4. Перезапустите службу приложений.

Убедитесь, что подключение нарушено

  1. На отдельной вкладке браузера откройте конечную точку клиента Direct Line для бота. Например, https://<your-app_service>.azurewebsites.net/.bot.

  2. Проверьте, отображается следующая страница:

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

    Значение initialized должно быть false, так как служба приложений и расширение службы приложений не могут подключаться к другим службам Bot Framework, чтобы инициализировать себя. Теперь бот изолирован в виртуальной сети для исходящих подключений.

Создание частной конечной точки

  1. Перейдите на портал Azure.
  2. Откройте ресурс Azure Bot для бота.
  3. В разделе Параметры выберите Сеть.
    1. На вкладке "Частный доступ" выберите "Создать частную конечную точку".
      1. На вкладке "Ресурс " в качестве подресурса целевого объекта выберите Bot из списка.
      2. На вкладке виртуальная сеть выберите виртуальную сеть и созданную вторую подсеть.
      3. Сохраните частную конечную точку.

Добавление частной конечной точки в службу приложений бота

  1. Откройте ресурс службы приложение Azure для бота.
  2. В разделе Параметры выберите пункт Конфигурация.
    1. На вкладке Параметры приложения выберите Новый параметр приложения.
      1. В качестве имени задайте DirectLineExtensionABSEndpoint.
      2. Задайте значение URL-адрес частной конечной точки, например https://<your_azure_bot>.privatelink.directline.botframework.com/v3/extension.
      3. Сохраните новый параметр.

Перезапустите службу приложений и убедитесь, что подключение восстановлено

  1. Перезапустите службу приложений для бота.

  2. На отдельной вкладке браузера откройте конечную точку клиента Direct Line для бота. Например, https://<your-app_service>.azurewebsites.net/.bot.

  3. Проверьте, отображается следующая страница:

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

    Значение initialized должно быть следующим: true.

  4. Используйте элемент управления Веб-чат, подключенный к клиенту Direct Line бота, для взаимодействия с ботом в частной сети.

Если частная конечная точка не работает правильно, можно добавить правило, чтобы разрешить исходящий трафик специально в azure AI Служба Bot.

Примечание.

Это сделает виртуальную сеть менее изолированной.

  1. Откройте группу безопасности сети, связанную с первой подсетью.
  2. В разделе Параметры выберите Правила безопасности для исходящего трафика.
    1. В списке правил безопасности для исходящего трафика включите AllowAzureBotService.
  3. Перейдите к ресурсу службы приложений для бота.
  4. Перезапустите службу приложений.

Отключение доступа к общедоступной сети боту

Вы можете заблокировать общедоступный доступ к Служба Bot ИИ Azure и разрешить доступ только через частную конечную точку. В портал Azure можно отключить сетевой доступ Служба Bot ИИ Azure.

Совет

Это приведет к ненастройке каналов Teams. Другие каналы (кроме Direct Line) не могут быть настроены или обновлены в портал Azure.

  1. Перейдите на портал Azure.
  2. Откройте службу приложений для бота.
  3. Отключите доступ к общедоступной сети.

Дополнительные сведения

Конфигурация виртуальной сети

У вас есть несколько вариантов настройки бота для виртуальной сети.

  • Создайте виртуальную сеть и включите службу приложение Azure в сети. Этот параметр используется в этой статье.
  • Создайте среду Служба приложений и добавьте Служба приложений план в среде.
  1. Создайте виртуальную сеть.
  2. Включите интеграцию служб приложение Azure в виртуальной сети.

Это действия, описанные в этой статье, как описано в разделе "Создание виртуальной сети ".

Дополнительные сведения см. в статье "Создание виртуальной сети с помощью портал Azure и включение интеграции виртуальной сети в службе приложение Azure".