Поделиться через


Шифрование Служба Bot ИИ Azure для неактивных данных

ОБЛАСТЬ ПРИМЕНЕНИЯ: ПАКЕТ SDK версии 4

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

Шифрование и расшифровка прозрачны. Это означает, что шифрованием и доступом управляют за вас. Данные безопасны по умолчанию, и вам не нужно изменять код или приложения, чтобы воспользоваться преимуществами шифрования.

Об управлении ключами шифрования

По умолчанию в подписке используются ключи шифрования, управляемые корпорацией Майкрософт. Вы можете управлять ресурсом бота с помощью собственных ключей, называемых ключами, управляемыми клиентом. Ключи, управляемые клиентом, обеспечивают большую гибкость для создания, поворота, отключения и отзыва элементов управления доступом к хранилищам Служба Bot Azure. Они также дают возможность выполнять аудит ключей шифрования, используемых для защиты ваших данных.

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

Управляемые клиентом ключи с использованием Azure Key Vault

Чтобы использовать функцию ключей, управляемых клиентом, необходимо хранить ключи и управлять ими в Azure Key Vault. Можно либо создать собственные ключи и хранить их в хранилище ключей, либо использовать API-интерфейсы Azure Key Vault для их генерации. Ресурс Azure Bot и хранилище ключей должны находиться в одном клиенте Идентификатора Microsoft Entra, но они могут находиться в разных подписках. Дополнительные сведения об Azure Key Vault см. в статье Что такое Azure Key Vault?.

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

При создании ресурса Azure Bot с помощью портала Azure azure создает идентификатор приложения и пароль, но не сохраняет их в Azure Key Vault. Вы можете использовать Key Vault с Служба Bot Azure AI. Дополнительные сведения см. в разделе "Настройка веб-приложения для подключения к Key Vault". Пример хранения и извлечения секретов с помощью Key Vault см. в кратком руководстве: клиентская библиотека секретов Azure Key Vault для .NET (пакет SDK версии 4).

Важно!

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

Какие данные шифруются?

Azure AI Служба Bot хранит данные клиента о боте, каналы, которые он использует, параметры конфигурации наборов разработчиков и, при необходимости, запись текущих активных бесед. Она также временно хранит сообщения, отправленные через каналы Direct Line или Веб-чат, и все вложения, отправленные менее чем за 24 часа.

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

Примечание.

Так как azure AI Служба Bot существует для предоставления клиентам возможности доставки сообщений и от пользователей в других службах за пределами Azure AI Служба Bot, шифрование не распространяется на эти службы. Это означает, что при использовании Служба Bot управления ИИ Azure данные будут храниться в зашифрованном виде в соответствии с рекомендациями, приведенными в этой статье. Однако при выходе из службы для доставки в другую службу данные расшифровываются, а затем отправляются с помощью шифрования TLS 1.2 в целевую службу.

Настройка экземпляра Azure Key Vault

Использование ключей, управляемых клиентом, с помощью Azure AI Служба Bot требует включения двух свойств в экземпляре Azure Key Vault, который планируется использовать для размещения ключей шифрования: обратимое удаление и защита от очистки. Эти функции гарантируют, что если по какой-то причине ключ случайно удален, его можно восстановить. Дополнительные сведения о обратимом удалении и защите от очистки см. в обзоре обратимого удаления Azure Key Vault.

Screenshot of soft delete and purge protection enabled.

Если вы используете имеющийся экземпляр Azure Key Vault, проверьте, включены ли эти свойства, на портале Azure в разделе Свойства. Если какие-либо из этих свойств не включены, ознакомьтесь с разделом Key Vault в разделе "Как включить обратимое удаление и очистку".

Предоставление azure AI Служба Bot доступ к хранилищу ключей

Чтобы azure AI Служба Bot иметь доступ к хранилищу ключей, созданному для этой цели, необходимо задать политику доступа, которая предоставляет субъекту-службе Azure AI Служба Bot текущий набор разрешений. Дополнительные сведения о Azure Key Vault, включая создание хранилища ключей, см. в статье "Сведения о Azure Key Vault".

  1. Зарегистрируйте поставщика ресурсов Azure AI Служба Bot в подписке, содержащей хранилище ключей.

    1. Переход на портал Azure.
    2. Откройте колонку "Подписки" и выберите подписку, содержащую хранилище ключей.
    3. Откройте колонку "Поставщики ресурсов" и зарегистрируйте поставщика ресурсов Microsoft.BotService .

    Microsoft.BotService registered as a resource provider

  2. Azure Key Vault поддерживает две модели разрешений: управление доступом на основе ролей Azure (RBAC) или политика доступа к хранилищу. Вы можете использовать любую модель разрешений. Убедитесь, что брандмауэры и виртуальные сети в колонке "Сеть " хранилища ключей заданы для разрешения общедоступного доступа со всех сетей на этом шаге. Кроме того, убедитесь, что оператор получил разрешение на управление ключами.

    Screenshot of the two permission models available for your key vault.

    1. Чтобы настроить модель разрешений Azure RBAC в хранилище ключей:

      1. Откройте колонку "Хранилища ключей" и выберите хранилище ключей .
      2. Перейдите в колонку управления доступом (IAM) и назначьте роль пользователя шифрования шифрования key Vault, чтобы Служба Bot CMEK Prod. Это изменение может вносить только пользователь с ролью владельца подписки.

      Screenshot of key vault configuration showing the crypto service encryption user role has been added.

    2. Чтобы настроить модель разрешений политики доступа Key Vault в хранилище ключей, выполните следующие действия.

      1. Откройте колонку "Хранилища ключей" и выберите хранилище ключей .
      2. Добавьте Служба Bot приложение CMEK Prod в качестве политики доступа и назначьте ему следующие разрешения:
      • Получение (из операций управления ключами)
      • Распаковка ключа (из операций шифрования)
      • Ключ оболочки (из криптографических операций)
      1. Нажмите кнопку "Сохранить", чтобы сохранить внесенные изменения.

      Bot Service CMEK Prod added as an access policy

  3. Разрешить Key Vault обойти брандмауэр.

    1. Откройте колонку "Хранилища ключей" и выберите хранилище ключей .
    2. Откройте колонку "Сеть" и перейдите на вкладку "Брандмауэры и виртуальные сети".
    3. Если для параметра "Разрешить доступ" установлено значение "Отключить общедоступный доступ", убедитесь, что выбрано разрешение доверенных службы Майкрософт для обхода этого брандмауэра.
    4. Нажмите кнопку "Сохранить", чтобы сохранить внесенные изменения.

    Firewall exception added for Key Vault

Активация управляемых клиентом ключей

Чтобы зашифровать бот с помощью ключа шифрования, управляемого клиентом, выполните следующие действия.

  1. Откройте колонку ресурсов Azure Bot для бота.

  2. Откройте колонку шифрования бота и выберите ключи , управляемые клиентом , для типа шифрования.

  3. Либо введите полный URI ключа, включая версию, либо выберите хранилище ключей и ключ, чтобы найти ключ .

  4. Щелкните Сохранить в верхней части колонки.

    Bot resource using customer-managed encryption

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

Циклическая смена управляемых клиентом ключей

Чтобы сменить ключ шифрования, управляемый клиентом, необходимо обновить ресурс Azure AI Служба Bot, чтобы использовать новый URI для нового ключа (или новую версию существующего ключа).

Так как повторное шифрование с новым ключом происходит асинхронно, убедитесь, что старый ключ остается доступным, чтобы данные могли продолжать расшифровываться; в противном случае бот может перестать работать. Старый ключ должен храниться по крайней мере на одну неделю.

Отзыв доступа к управляемым клиентом ключам

Чтобы отменить доступ, удалите политику доступа для субъекта-службы CMEK Prod Служба Bot из хранилища ключей.

Примечание.

Отмена доступа нарушает большую часть функциональных возможностей, связанных с ботом. Чтобы отключить функцию ключей, управляемую клиентом, отключите функцию перед отменой доступа, чтобы убедиться, что бот может продолжать работать.

Следующие шаги

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