Настройка шифрования токенов SAML в Microsoft Entra
Примечание.
Шифрование токенов — это функция Microsoft Entra ID P1 или P2. Дополнительные сведения о выпусках, функциях и ценах Microsoft Entra см. в разделе о ценах на Microsoft Entra.
Шифрование токенов SAML позволяет использовать зашифрованные утверждения SAML в приложении, которое его поддерживает. При настройке для приложения идентификатор Microsoft Entra шифрует утверждения SAML, которые он выдает для этого приложения. Он шифрует утверждения SAML с помощью открытого ключа, полученного из сертификата, хранящегося в идентификаторе Microsoft Entra. Приложение должно использовать соответствующий закрытый ключ для расшифровки токена, прежде чем токен можно будет применять в качестве доказательства проверки подлинности для пользователя, выполнившего вход.
Шифрование утверждений SAML между идентификатором Microsoft Entra и приложением обеспечивает большую уверенность в том, что содержимое маркера невозможно перехватить, а личные или корпоративные данные скомпрометированы.
Даже без шифрования токенов токены Microsoft Entra SAML никогда не передаются в сеть в ясной среде. Идентификатор Microsoft Entra id требует, чтобы обмен маркерами и ответами проходил через зашифрованные каналы HTTPS/TLS, чтобы взаимодействие между поставщиком удостоверений, браузером и приложением выполнялось через зашифрованные ссылки. Оцените преимущества шифрования токенов в вашем сценарии по сравнению с затратами на управление дополнительными сертификатами.
Чтобы настроить шифрование маркеров, необходимо отправить файл сертификата X.509, содержащий открытый ключ, в объект приложения Microsoft Entra, представляющий приложение.
Чтобы получить сертификат X.509, его можно скачать из самого приложения. Вы также можете получить его от поставщика приложений в случаях, когда поставщик приложений предоставляет ключи шифрования. Если приложение ожидает предоставления закрытого ключа, его можно создать с помощью средств шифрования. Часть закрытого ключа передается в хранилище ключей приложения и соответствующий сертификат открытого ключа, отправленный в идентификатор Microsoft Entra.
Идентификатор Microsoft Entra использует AES-256 для шифрования данных утверждения SAML.
Необходимые компоненты
Чтобы настроить шифрование токенов SAML, вам потребуется:
- Учетная запись пользователя Microsoft Entra. Если ее нет, можно создать учетную запись бесплатно.
- Одна из следующих ролей: администратор облачных приложений, администратор приложений или владелец субъекта-службы.
Совет
Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.
Настройка шифрования токенов SAML корпоративного приложения
В этом разделе описывается настройка шифрования токена SAML корпоративного приложения. Эти приложения настраиваются из области корпоративных приложений в Центре администрирования Microsoft Entra либо из коллекции приложений, либо из приложения, отличного от коллекции. Для приложений, зарегистрированных с помощью регистрации приложений, следуйте указаниям по настройке шифрования токенов SAML зарегистрированного приложения.
Чтобы настроить шифрование токенов SAML корпоративного приложения, сделайте следующее:
Получите сертификат открытого ключа, соответствующий закрытому ключу, настроенном в приложении.
Создайте пару асимметричных ключей для шифрования. Если приложение предоставляет открытый ключ для шифрования, следуйте инструкциям приложения, чтобы загрузить сертификат X.509.
Открытый ключ должен храниться в формате CER сертификата X.509. Вы можете скопировать содержимое файла сертификата в текстовый редактор и сохранить его в виде файла .cer. Файл сертификата должен содержать только открытый ключ, а не закрытый ключ.
Если приложение использует ключ, созданный для вашего экземпляра, следуйте инструкциям, предоставленным приложением для установки закрытого ключа, который приложение использует для расшифровки маркеров из клиента Microsoft Entra.
Добавьте сертификат в конфигурацию приложения в идентификаторе Microsoft Entra.
Настройка шифрования токенов в Центре администрирования Microsoft Entra
Вы можете добавить общедоступный сертификат в конфигурацию приложения в Центре администрирования Microsoft Entra.
Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
Перейдите к приложениям>Identity>Application Enterprise Для всех приложений.>
Введите имя существующего приложения в поле поиска и выберите приложение из результатов поиска.
На странице приложения выберите Шифрование токенов.
Примечание.
Параметр шифрования токенов доступен только для приложений SAML, настроенных из области корпоративных приложений в Центре администрирования Microsoft Entra, из коллекции приложений или приложения, отличного от коллекции. Для других приложений этот параметр отключен.
На странице Шифрование токенов щелкните Импорт сертификата, чтобы импортировать CER-файл, содержащий открытый сертификат X.509.
Как только сертификат будет импортирован, а закрытый ключ настроен для использования на стороне приложения, активируйте шифрование, выбрав ... рядом с состоянием отпечатка, а затем щелкните Активировать сертификат шифрования токенов в раскрывающемся меню.
Щелкните Да, чтобы подтвердить активацию сертификата шифрования токенов.
Убедитесь, что утверждения SAML, выдаваемые для приложения, зашифрованы.
Отключение шифрования маркеров в Центре администрирования Microsoft Entra
В Центре администрирования Microsoft Entra перейдите к приложениям>Identity>Applications>Enterprise, а затем выберите приложение с включенным шифрованием токенов SAML.
На странице приложения щелкните Шифрование токенов, найдите сертификат, а затем щелкните ..., чтобы открыть раскрывающееся меню.
Щелкните Deactivate token encryption (Деактивировать шифрование токенов).
Настройка шифрования токена SAML зарегистрированного приложения
В этом разделе описывается настройка шифрования токена SAML зарегистрированного приложения. Эти приложения настраиваются из области Регистрация приложений в Центре администрирования Microsoft Entra. Для корпоративных приложений следуйте указаниям по настройке шифрования токенов SAML для корпоративного приложения.
Сертификаты шифрования хранятся в объекте приложения в идентификаторе Microsoft Entra с тегом encrypt
использования. Можно настроить несколько сертификатов шифрования, а тот, который активен для шифрования токенов, идентифицируется с помощью атрибута tokenEncryptionKeyID
.
Вам нужен идентификатор объекта приложения для настройки шифрования маркеров с помощью API Microsoft Graph или PowerShell. Это значение можно найти программным способом или перейдите на страницу свойств приложения в Центре администрирования Microsoft Entra и отметив значение идентификатора объекта.
При настройке keyCredential с помощью Graph, PowerShell или в манифесте приложения следует создать идентификатор GUID для использования в качестве keyId.
Чтобы настроить шифрование токенов для регистрации приложения, выполните следующие действия.
Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
Перейдите к приложениям >identity>Регистрация приложений> All.
Введите имя существующего приложения в поле поиска и выберите приложение из результатов поиска.
На странице приложения выберите Манифест, чтобы изменить манифест приложения.
В следующем примере показан манифест приложения, настроенный с двумя сертификатами шифрования, а второй выбран в качестве активного с помощью tokenEncryptionKeyId.
{ "id": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee", "accessTokenAcceptedVersion": null, "allowPublicClient": false, "appId": "00001111-aaaa-2222-bbbb-3333cccc4444", "appRoles": [], "oauth2AllowUrlPathMatching": false, "createdDateTime": "2017-12-15T02:10:56Z", "groupMembershipClaims": "SecurityGroup", "informationalUrls": { "termsOfService": null, "support": null, "privacy": null, "marketing": null }, "identifierUris": [ "https://testapp" ], "keyCredentials": [ { "customKeyIdentifier": "Tog/O1Hv1LtdsbPU5nPphbMduD=", "endDate": "2039-12-31T23:59:59Z", "keyId": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333", "startDate": "2018-10-25T21:42:18Z", "type": "AsymmetricX509Cert", "usage": "Encrypt", "value": <Base64EncodedKeyFile> "displayName": "CN=SAMLEncryptTest" }, { "customKeyIdentifier": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u=", "endDate": "2039-12-31T23:59:59Z", "keyId": "bbbbbbbb-1c1c-2d2d-3e3e-444444444444", "startDate": "2018-10-25T21:42:18Z", "type": "AsymmetricX509Cert", "usage": "Encrypt", "value": <Base64EncodedKeyFile> "displayName": "CN=SAMLEncryptTest2" } ], "knownClientApplications": [], "logoUrl": null, "logoutUrl": null, "name": "Test SAML Application", "oauth2AllowIdTokenImplicitFlow": true, "oauth2AllowImplicitFlow": false, "oauth2Permissions": [], "oauth2RequirePostResponse": false, "orgRestrictions": [], "parentalControlSettings": { "countriesBlockedForMinors": [], "legalAgeGroupRule": "Allow" }, "passwordCredentials": [], "preAuthorizedApplications": [], "publisherDomain": null, "replyUrlsWithType": [], "requiredResourceAccess": [], "samlMetadataUrl": null, "signInUrl": "https://127.0.0.1:444/applications/default.aspx?metadata=customappsso|ISV9.1|primary|z" "signInAudience": "AzureADMyOrg", "tags": [], "tokenEncryptionKeyId": "bbbbbbbb-1c1c-2d2d-3e3e-444444444444" }
Следующие шаги
- Узнайте, как идентификатор Microsoft Entra использует протокол SAML
- Сведения о формате, характеристиках безопасности и содержимом токенов SAML в идентификаторе Microsoft Entra