Общие сведения о ключах политики в Azure Active Directory B2C

Для начала с помощью селектора Choose a policy type (Выбрать тип политики) выберите тип пользовательской политики. Azure Active Directory B2C предлагает два метода определения способа взаимодействия пользователей с вашими приложениями: с помощью предопределенных потоков пользователей или полностью настраиваемых пользовательских политик. Действия, которые необходимо выполнить, отличаются для каждого метода.

Эта возможность доступна только для пользовательских политик. Чтобы ознакомиться с этапами установки, в предыдущем селекторе выберите Настраиваемая политика.

Чтобы установить отношение доверия с интегрируемыми службами, Azure Active Directory B2C (Azure AD B2C) хранит секреты и сертификаты в виде ключей политики. Эти отношения доверия состоят из следующих элементов:

  • Внешние поставщики удостоверений
  • Подключение к службам REST API
  • Подписывание и шифрование маркера

В этой статье рассматриваются необходимые сведения о ключах политики, используемых Azure AD B2C.

Примечание.

Сейчас настройка ключей политики применяется только для пользовательских политик.

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

Набор ключей и ключи политики

Ресурс верхнего уровня для ключей политики в Azure AD B2C является контейнером набора ключей. Каждый набор ключей содержит по крайней мере один ключ. Ключ имеет следующие атрибуты:

Атрибут Обязательное поле Замечания
use Да Применение: определяет предполагаемое использование открытого ключа. Шифрование данных enc или проверка подписи данных sig.
nbf No Дата и время активации.
exp No Дата и время окончания срока действия.

Рекомендуется установить значения для активации и истечения срока действия ключа в соответствии со стандартами PKI. По соображениям безопасности или в соответствии с требованиями политики может потребоваться периодическая смена этих сертификатов. Например, может использоваться политика ежегодной смены всех сертификатов.

Для создания ключа можно выбрать один из следующих методов.

  • Вручную. Секрет создается с помощью определяемой вами строки. Секрет является симметричным ключом. Вы можете задать даты активации и окончания срока действия.
  • Генерирование. Автоматическое создание ключа. Вы можете задать даты активации и окончания срока действия. Существует два варианта:
    • Секрет. Создается симметричный ключ.
    • RSA. Создается пара ключей (асимметричные ключи).
  • Отправка. Отправка сертификата или ключа PKCS12. Сертификат должен содержать закрытые и открытые ключи (асимметричные ключи).

Смена ключей

Смена ключей в Azure AD B2C может выполняться периодически в целях безопасности или немедленно в экстренном случае. Любые приложения, поставщики удостоверений или REST API, которые интегрируются с Azure AD B2C, должны быть подготовлены к обработке смены ключа, независимо от того, насколько часто происходит такая смена. В противном случае, если приложение или Azure AD B2C пытается использовать ключ с истекшим сроком действия для выполнения криптографической операции, запрос на вход завершится ошибкой.

Если набор ключей Azure AD B2C имеет несколько ключей, в любой момент времени будет активен только один из них. Этот ключ определяется на основе следующих критериев:

  • Ключ активации выбирается на основе даты активации.
    • Ключи сортируются по дате активации в порядке возрастания. Ключи с более поздними датами активации будут располагаться в списке ниже. Ключи без даты активации находятся внизу списка.
    • Если текущая дата и время позже даты активации ключа, Azure AD B2C активирует ключ и прекращает использовать предыдущий активный ключ.
  • Если срок действия текущего ключа истекает, а контейнер ключей содержит новый ключ с допустимым временем в полях не ранее и срок действия, новый ключ станет активным автоматически.
  • Если срок действия текущего ключа истекает, а контейнер ключей не содержит новый ключ с допустимым временем в полях не ранее и срок действия, Azure AD B2C не сможет использовать просроченный ключ. Azure AD B2C выдаст сообщение об ошибке в зависимом компоненте пользовательской политики. Чтобы избежать этой проблемы, можно создать для подстраховки ключ по умолчанию без дат активации и истечения срока действия.
  • При ссылке на ключ в техническом профиле JwtIssuer конечная точка ключа (URI JWKS) для конечной точки известной конфигурации OpenID Connect соответствует ключам, настроенным в контейнере ключей. Приложение, использующее библиотеку OIDC, автоматически извлекает эти метаданные, чтобы убедиться в правильности используемых ключей для проверки маркеров. Дополнительные сведения см. в статье о том, как использовать библиотеку проверки подлинности Майкрософт, которая всегда автоматически получает новейшие ключи подписывания маркера.

Управление ключами политики

Чтобы получить текущий активный ключ в контейнере ключей, используйте конечную точку API Microsoft Graph getActiveKey.

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

  1. Войдите на портал Azure.
  2. Если у вас есть доступ к нескольким клиентам, выберите значок Параметры в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню каталогов и подписок.
  3. В портале Azure найдите и выберите Azure AD B2C.
  4. На странице "Обзор" в разделе Политики выберите Identity Experience Framework.
  5. Щелкните Ключи политики.
    1. Чтобы добавить новый ключ, выберите Добавить.
    2. Чтобы удалить новый ключ, выберите его и нажмите кнопку Удалить. Чтобы удалить ключ, введите имя контейнера ключа, который нужно удалить. Azure AD B2C удалит ключ и создаст копию ключа с суффиксом .bak.

Замена ключа

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

  • Рекомендуется добавить новый ключ с датой активации, совпадающей с текущими датой и временем. Azure AD B2C активирует новый ключ и прекратит использовать прежний активный ключ.
  • Кроме того, можно создать новый набор ключей с правильными ключами. Обновите политику, чтобы использовать новый набор ключей, а затем удалите старый.

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