Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте расширение браузера Microsoft Entra App Validator, чтобы проверить интеграцию единого входа (SSO) вашего приложения на основе SAML 2.0 перед отправкой приложения для включения в коллекцию приложений Microsoft Entra. Валидатор фиксирует вход в ваше приложение, собирает свидетельства протокола, отслеживает завершение сценария и подготавливает результат для отправки.
Important
Валидатор не выполняет криптографическую проверку подписей SAML, не изменяет конфигурацию вашего арендатора Microsoft Entra и не заменяет набор тестов вашего приложения. Ваше приложение отвечает за проверку подписей и применение требований к проверке подлинности и авторизации.
В этом руководстве вы узнаете, как:
- Подготовьте среду Microsoft Entra для проверки SAML.
- Настройте корпоративное приложение, не входящее в коллекцию, для единого входа на основе SAML.
- Установите и откройте средство проверки приложений Entra.
- Проверьте потоки SAML, инициированные поставщиком удостоверений (IdP) и поставщиком услуг (SP).
- Запустите сценарии с рабочим сертификатом и истекшим сроком действия сертификата.
- При необходимости проверьте единый выход из системы.
- Просмотрите и отправьте результаты проверки.
Prerequisites
Прежде чем начать, убедитесь, что у вас есть:
- Клиент Microsoft Entra.
- Разрешение на управление корпоративными приложениями, такими как администратор облачных приложений, администратор приложений или владение субъектом-службой.
- Тестовая учетная запись пользователя, которую можно назначить приложению.
- Microsoft Edge.
- Конечная точка входа в приложение, доступная тестовым пользователем.
- Значения SAML, которые ожидает приложение:
- Идентификатор (идентификатор сущности)
- URL-адрес ответа (URL службы приема утверждений)
- URL-адрес для входа, если приложение поддерживает единый вход, инициированный поставщиком службы
- Идентификатор отправки коллекции. Создайте отправку коллекции перед началом проверки, так как не удается отправить результаты проверки без допустимого идентификатора отправки.
Important
Используйте клиент непроизводства и непроизводное приложение для проверки. Сценарий с просроченным сертификатом намеренно прерывает вход в тестируемое приложение.
Получите идентификатор отправки в галерею
Перед началом проверки создайте отправку коллекции Microsoft Entra и скопируйте его идентификатор.
В Центр администрирования Microsoft Entra запустите процесс публикации приложения в коллекции Microsoft Entra.
Выберите "Опубликовать приложение". Если у вас уже есть черновик заявки, выберите Ваши опубликованные приложения.
Перейдите на шаг типа интеграции .
Скопируйте значение, отображаемое в разделе "Идентификатор отправки".
Идентификатор отправки — это GUID, например 11680398-5b31-4e47-a61d-191e7e638e85. Не закрывайте это окно, пока вы запускаете валидатор.
Когда проверяющий запрашивает идентификатор отправки:
- Если отправленный материал принадлежит арендатору, в котором вы вошли в систему, выберите его в разделе Выберите один из отправленных вами материалов.
- Если отправка принадлежит другому клиенту, вставьте идентификатор отправки в поле.
Если в списке не отображаются заявки, вы всё равно можете вручную ввести идентификатор заявки.
Important
Невозможно отправить результаты валидации без действительного идентификатора отправки в галерею.
Настройка приложения
Средство проверки проверяет приложение в вашем арендаторе, существующее как корпоративное приложение не из коллекции.
Создание приложения
- Войдите в Центр администрирования Microsoft Entra.
- Перейдите к разделу Корпоративные приложения.
- Выберите «Новое приложение>Создать своё приложение».
- Введите имя приложения.
- Выберите Интегрировать любое другое приложение, которое вы не найдете в галерее (не из галереи).
- Нажмите кнопку "Создать".
Настройка единого входа SAML
- Откройте созданное корпоративное приложение.
- Выберите Однократную аутентификацию.
- Выберите SAML.
- Настройте следующие значения в базовой конфигурации SAML.
| Field | Description |
|---|---|
| Идентификатор (идентификатор сущности) | Идентификатор, который приложение использует для идентификации себя для Microsoft Entra ID. |
| URL-адрес ответа (URL-адрес ACS) | Конечная точка, в которой Microsoft Entra ID отправляет ответ SAML. |
| URL-адрес для входа | Страница входа в приложение. Настройте это значение, если приложение поддерживает единый вход, инициированный поставщиком служб. |
Note
URL-адрес входа влияет на поведение теста. Если настроен URL-адрес входа, плитка «Мои приложения» может перенаправить пользователя на страницу входа в ваше приложение и инициировать вход, инициированный поставщиком услуг. Чтобы проверить единый вход (SSO), инициируемый поставщиком удостоверений (IdP) из Мои приложения, очистите поле URL-адреса входа для этого теста. После этого восстановите его, если приложение также поддерживает единый вход (SSO), инициированный поставщиком услуг (SP).
Настройка утверждений при необходимости
Если приложению требуются дополнительные атрибуты, пользовательские утверждения, роли приложения или определенный формат NameID, настройте их в атрибутах и утверждениях на странице единого входа приложения.
Назначение тестового пользователя
- Откройте корпоративное приложение.
- Выберите пользователей и группы.
- Выберите Добавить пользователя или группу.
- Назначьте тестового пользователя приложению.
- Откройте Мои приложения и убедитесь, что появится плитка приложения.
Плитка Мои приложения требуется для проверки, инициированной поставщиком удостоверений, так как этот поток начинается с Microsoft Entra ID.
Установка и открытие средства проверки приложений Entra
- Установите средство проверки приложений Entra из Microsoft Edge надстроек.
- Закрепление расширения на панели инструментов браузера.
- Выберите значок расширения, чтобы открыть валидатор.
- В валидаторе откройте вкладку Тест.
- Выберите SAML 2.0.
- Создайте новый тест или выберите существующий тест для продолжения.
Ход выполнения теста сохраняется автоматически, чтобы можно было закрыть проверяющий элемент и возобновить тест позже.
Выберите потоки SAML для проверки
Выберите потоки входа, поддерживаемые приложением:
- инициированный IdP
- Инициированный провайдером услуг
- Both
В качестве сценариев проверки предлагаются только те потоки, которые вы объявляете. Если позже удалить поток, который уже записан, проверяющий удаляет эти запуски, так как они больше не соответствуют объявленным возможностям.
Общие сведения о сценариях SAML
Каждый сценарий SAML следует одному и тому же процессу: выберите сценарий, откройте приложение, запишите вход, а затем просмотрите и сохраните запуск.
| Scenario | Что он проверяет | Обязательный |
|---|---|---|
| Рабочий сертификат | Обычный вход с допустимым сертификатом подписи SAML. | Yes |
| Истек срок действия сертификата | Поведение приложения, если утверждение подписано сертификатом с истекшим сроком действия. | Yes |
| Единый выход из системы | Перехват запроса на выход после выхода из системы. | No |
Только сценарии с действующим сертификатом и сертификатом с истекшим сроком действия учитываются при завершении настройки SAML. Single Logout необязателен и не препятствует отправке.
Запустить проверку, инициированную IdP
Вход, инициируемый IdP, начинается в Microsoft Entra ID. Пользователь выбирает плитку приложения в Мои приложения, а Microsoft Entra ID отправляет незапрошенный ответ SAML на URL-адрес ACS приложения.
- В валидаторе выберите сценарий рабочего сертификата, инициируемый IdP.
- Выберите нужное приложение из плиток «Мои приложения», отображаемых валидатором.
- Запуск записи.
- Когда Мои приложения откроется, выберите плитку приложения.
- Завершите вход.
- Подтвердите наблюдаемый результат входа в систему в валидаторе.
- Просмотрите и сохраните запуск проверки.
Ожидаемые признаки включают плитку приложения, незапрошенный ответ SAML, отправленный на URL-адрес ACS, целевую страницу, не относящуюся к Microsoft, и ручное подтверждение результата.
Tip
Если перехваченный ответ содержит значение InResponseTo, вход был инициирован SP, а не IdP. Значение InResponseTo связывает ответ с ответом AuthnRequest из приложения.
Запустите проверку, инициированную поставщиком услуг
SSO, инициированный поставщиком услуг, начинается в вашем приложении. Приложение перенаправляет браузер на Microsoft Entra ID с помощью запроса SAML. После аутентификации пользователя Microsoft Entra ID отправляет ответ SAML на URL-адрес ACS.
- В валидаторе выберите сценарий working-certificate, инициируемый поставщиком услуг (SP).
- Определите приложение.
- Введите URL-адрес входа приложения.
- Запуск записи.
- Завершите вход во вкладке браузера, открытой валидатором.
- Подтвердите результат входа в систему.
- Просмотрите и сохраните запуск проверки.
Ожидаемые наблюдения включают загрузку URL-адреса входа в приложение, запрос SAML, отправленный в Microsoft Entra ID, ответ SAML, полученный по URL-адресу ACS, целевую страницу, не относящуюся к Microsoft, и подтверждение результата вручную.
Проверка сертификата с истекшим сроком действия
Сценарий с сертификатом с истекшим сроком действия фиксирует подтверждение того, что ваше приложение отклоняет попытку входа, в которой используется утверждение, подписанное сертификатом с истекшим сроком действия. Запустите этот сценарий в том же приложении, которое использовалось для сценария рабочего сертификата.
Предостережение
Этот сценарий прерывает вход для приложения, на котором выполняется тестирование, пока не восстановите рабочий сертификат. Запустите этот тест только для приложения, не являющегося коллекцией, созданного для этой проверки, и убедитесь, что приложение не используется другими пользователями или рабочими нагрузками.
Important
Перед публикацией этой статьи подтвердите утвержденную процедуру импорта и активации сертификата подписи SAML с истекшим сроком действия, ожидаемого времени распространения и необходимых действий по очистке с помощью группы продуктов Entra App Validator.
После того как утвержденная процедура будет доступна, выполните следующие действия.
- Откройте корпоративное приложение в Центр администрирования Microsoft Entra.
- Выберитесертификаты SAMLдля единого> входа.
- Импортируйте утвержденный тестовый сертификат, который уже истек.
- Сделайте сертификат с истекшим сроком действия активным.
- Подождите, пока изменение конфигурации вступит в силу.
- В валидаторе запустите сценарий Просроченный сертификат.
- Завершите вход.
- Убедитесь, что не удается выполнить вход в вашем приложении.
- Восстановите рабочий сертификат.
Примечание. Для тестирования можно создать самозаверяющий сертификат с датой окончания срока действия в прошлом и использовать его для этого сценария. Импортируйте сертификат в сертификаты SAML и сделайте его активным перед выполнением проверки. Создайте самозаверяющий сертификат с истекшим сроком действия, чтобы создать самозаверяющий сертификат для тестирования, откройте Windows PowerShell и запустите следующий скрипт.
Пароль: ExpiredCert-TestOnly-123!
# Test-only PFX password
$password = ConvertTo-SecureString `
"ExpiredCert-TestOnly-123!" `
-AsPlainText `
-Force
# Create a certificate that was valid from two years ago
# until one year ago, meaning it is already expired.
$cert = New-SelfSignedCertificate `
-Type Custom `
-Subject "CN=Expired-Entra-SAML-Test" `
-FriendlyName "Expired Entra SAML Test" `
-CertStoreLocation "Cert:\CurrentUser\My" `
-KeyAlgorithm RSA `
-KeyLength 2048 `
-HashAlgorithm SHA256 `
-KeyExportPolicy Exportable `
-KeyUsage DigitalSignature `
-NotBefore (Get-Date).AddYears(-2) `
-NotAfter (Get-Date).AddYears(-1)
# Export certificate and private key for importing into Entra
Export-PfxCertificate `
-Cert $cert `
-FilePath "$PWD\expired-saml-signing.pfx" `
-Password $password
# Optional: export only the public certificate
Export-Certificate `
-Cert $cert `
-FilePath "$PWD\expired-saml-signing.cer"
# Confirm its dates
$cert | Format-List `
Subject,
Thumbprint,
NotBefore,
NotAfter,
HasPrivateKey
Подождите 5–10 минут после отправки и активации сертификата с истекшим сроком действия, чтобы разрешить распространение изменений перед выполнением сценария. Это помогает гарантировать, что выполнение фиксирует только что активированный сертификат, а не предыдущий. Если просроченный сертификат не применяется через 5–10 минут, удалите непросроченный сертификат перед запуском сценария.
Note
Используйте выделенный тестовый сертификат и тестовое приложение. Не используйте рабочий сертификат подписи для этого сценария.
При необходимости проверьте единый выход из системы
Если приложение поддерживает единый выход SAML, запустите сценарий единого выхода .
- Войдите через валидатор.
- Выйдите из приложения.
- Разрешить проверятелю записывать запрос на выход.
- Сохраните результат.
Если приложение не поддерживает единый выход, выберите "Мое приложение" не поддерживает это. Пропуск единого выхода из системы регистрируется и не блокирует отправку.
Просмотр и отправка результатов проверки
После каждого запуска просматривайте собранные данные перед отправкой. При выполнении SAML-проверок валидатор может отображать декодированные сведения о запросе и ответе, сведения об утверждениях SAML, утверждения, сведения о сертификате и сведения о подписи.
Перед отправкой объявите, как приложение идентифицирует пользователей. Валидатор запрашивает, какое значение токена ваше приложение использует для сопоставления входа с записью пользователя, например идентификатор объекта, основное имя пользователя (UPN), адрес электронной почты, идентификатор сотрудника, имя локальной учетной записи SAM или именованное настраиваемое утверждение.
Important
Не полагаться только на изменяемое значение, например адрес электронной почты, для сопоставления пользователей. Адреса электронной почты и имена пользователей могут быть изменены или переназначированы. Сопоставление только в изменяемом значении может позволить пользователю, наследующему идентификатор предыдущего пользователя, получить доступ к учетной записи приложения этого пользователя.
Если приложение использует мутируемый идентификатор, свяжу его с неизменяемым идентификатором, например идентификатором объекта. Одного именованного пользовательского утверждения достаточно, если именно так ваше приложение идентифицирует пользователей.
Для SAML требуется отправка:
- Завершённый сценарий справки с места работы для каждого объявленного потока.
- Завершённый сценарий «Просроченный сертификат» для каждого объявленного потока.
- Подтверждение результатов вручную для каждого требуемого сценария.
- Декларация сопоставления идентификаторов.
Single Logout необязателен и не препятствует отправке.
Устранение распространенных неполадок
Плитка приложения не отображается в Мои приложения
Назначьте тестового пользователя приложению, а затем перезагрузите Мои приложения. Неназначенное приложение не отображается в Мои приложения, а проверка, инициированная поставщиком удостоверений (IdP), запускается из плитки Мои приложения.
Я выбрал вариант «инициированный поставщиком удостоверений», но ответ содержит InResponseTo
Ответ, содержащий InResponseTo, связан с запросом от вашего приложения, а это означает, что вход инициирован поставщиком услуг. Распространенная причина — это настроенный URL-адрес входа, который может привести к перенаправлению плитки Мои приложения на страницу входа приложения.
Во время запуска с истёкшим сертификатом был зафиксирован старый сертификат.
Возможно, изменение сертификата еще не вступило в силу. Следуйте утвержденной процедуре продукта для времени распространения и очистки, а затем повторно запустите сценарий.
Не удается войти из-за ошибки AADSTS
Сначала просмотрите встроенное диагностическое сообщение валидатора.
| Код ошибки | Значение | Предлагаемое действие |
|---|---|---|
AADSTS750054 |
В запросе к Microsoft Entra ID не найден запрос SAML. | Убедитесь, что ваше приложение отправляет AuthnRequest с параметром запроса SAMLRequest. |
AADSTS50011 |
Несоответствие URL-адреса ответа. | Убедитесь, что URL-адрес ACS, запрошенный приложением, находится в списке URL-адресов ответа приложения. |
AADSTS700016 |
Приложение не найдено. | Убедитесь, что идентификатор (Entity ID) соответствует приложению в арендаторе. |
Для устранения неполадок используйте журналы входа Microsoft Entra и рекомендации по устранению неполадок SAML.
Следующий шаг
Связанные материалы
- Отправка запроса на публикацию приложения в коллекции приложений Microsoft Entra
- Включение единого входа SAML для корпоративного приложения
- Протокол единого входа SAML
- Настройка утверждений токена SAML
- Руководство по управлению сертификатами для федеративного единого входа
- Отладка единого входа на основе SAML в приложениях