Основы проверки подлинности Bot Framework

ПРИМЕНИМО К: пакет SDK версии 4

Часто бот должен получить доступ к защищенным ресурсам, например учетной записи электронной почты от имени пользователя. Чтобы сделать это, бот должен быть авторизован на основе учетных данных пользователя. Перед этим пользователю сначала необходимо пройти проверку подлинности . Бот должен быть известной сущностью, то есть она должна проходить проверку подлинности в контексте службы Azure AI Bot. Это происходит до того, как бот авторизован для работы от имени пользователя.

Давайте посмотрим, можем ли мы распутать эту путаницу, начиная с обзора с высоты птичьего полёта на контекст аутентификации Bot Framework.

Контекст проверки подлинности бота

  • При регистрации бота в Azure с помощью ресурса Azure Bot Azure Azure создает приложение регистрации идентификатора Microsoft Entra. Это приложение имеет идентификатор приложения (MicrosoftAppId) и секрет клиента (MicrosoftAppPassword). Эти значения используются в файлах конфигурации бота, как описано ниже.

  • Идентификатор Microsoft Entra — это облачная служба удостоверений, которая позволяет создавать приложения, безопасные для входа пользователей с помощью стандартных отраслевых протоколов, таких как OAuth 2.0. Вы создаете приложение Active Directory и используете его идентификатор приложения и пароль для выбора поставщика удостоверений и создания подключения проверки подлинности . Вы добавляете это подключение к ресурсу бота. Вы также добавите имя подключения в файлы конфигурации бота, как описано ниже.

  • Бот идентифицируется идентификатором приложения и паролем приложения ресурсов Azure Bot. Вы добавляете связанные значения в файл конфигурации бота или в секретное хранилище или диспетчер ключей. Вы также добавляете имя подключения. Бот использует токен на основе ID приложения и пароля для доступа к защищенным ресурсам. Бот использует различные токены, основанные на аутентифицированном подключении, для доступа к защищённым ресурсам пользователя.

Проверка подлинности и авторизация бота

Ниже приведены основные шаги для проверки подлинности бота и авторизации его для доступа к защищенным ресурсам пользователя:

  1. Создайте приложение регистрации канала бота.
  2. Добавьте идентификатор приложения регистрации и пароль в файл конфигурации бота. Это позволяет боту проходить проверку подлинности для доступа к защищенным ресурсам.
  3. Создайте приложение идентификатора Microsoft Entra, чтобы выбрать поставщика удостоверений для проверки подлинности пользователя.
  4. Создайте подключение проверки подлинности и добавьте его в параметры регистрации канала.
  5. Добавьте имя подключения в файлы конфигурации бота. Это позволяет боту быть авторизованным для доступа к защищенным ресурсам пользователя.

Полный пример см. в разделе "Добавление проверки подлинности в бот".

Лучшие практики

  • Оставьте регистрацию приложения Microsoft Entra ID ограниченной его первоначальной целью — взаимодействие между приложениями.
  • Создайте дополнительное приложение Microsoft Entra ID для любого пользователя, чтобы обеспечить проверку подлинности, обеспечить более точный контроль над отключением подключений проверки подлинности, обновлением секретов или повторным использованием приложения Microsoft Entra ID с другими приложениями.

Ниже указаны некоторые проблемы, возникающие при использовании приложения для регистрации Microsoft Entra ID для проверки подлинности:

  • Если сертификат, присоединенный к регистрации приложения идентификатора Microsoft Entra, необходимо продлить, это повлияет на пользователей, прошедших проверку подлинности с другими службами идентификаторов Microsoft Entra с помощью сертификата.
  • Как правило, он создает единую точку сбоя и управления для всех действий, связанных с проверкой подлинности, с ботом.

В следующих статьях содержатся подробные сведения и примеры проверки подлинности в Bot Framework. Начните с просмотра типов проверки подлинности , а затем поставщиков удостоверений.

Статья Описание
Типы аутентификации Описывает два типа проверки подлинности Bot Framework и используемые маркеры.
Поставщики удостоверений Описывает использование поставщиков удостоверений. Они позволяют создавать приложения, безопасные для входа пользователей с помощью стандартных отраслевых протоколов, таких как OAuth2.0.
Аутентификация пользователей Описывает проверку подлинности пользователя и связанный маркер, чтобы авторизовать бота для выполнения задач от имени пользователя.
Единый вход Описывает проверку подлинности одного пользователя для доступа к нескольким защищенным ресурсам.
Регистрация бота в Azure Показывает, как зарегистрировать бот в службе Azure AI Bot.
Рекомендации по безопасности Bot Framework Описывает безопасность в целом и как она применяется к Bot Framework.
Добавить аутентификацию в бота Показывает, как зарегистрировать канал бота, создать подключение для аутентификации и подготовить код.
Добавление единого входа для бота Показывает, как добавить проверку подлинности единичного входа в чат-бот.