Сбои проверки токенов SAML в ADFS: решение Event ID 364 и 325
Симптомы сбоев проверки SAML-токенов в AD FS
Пользователи не могут войти в корпоративные SaaS-приложения или порталы, использующие федеративную аутентификацию Active Directory Federation Services (AD FS). В браузере отображается ошибка «Произошла ошибка при обработке запроса», а в журнале AD FS/Admin регистрируется Event ID 364: Microsoft.IdentityServer.Service.SecurityTokenService.RevocationCheckFailedException или Event ID 325: The SAML assertion is not within its valid time range.
| Симптом | Где фиксируется | Причина |
|---|---|---|
| Event ID 364 (RevocationCheckFailed) | Журнал AD FS/Admin | AD FS не может проверить статус отзыва сертификата Relying Party Trust |
| Event ID 325 (Time Skew Error) | Журнал AD FS/Admin | Рассинхронизация времени NTP между сервером AD FS и сервером провайдера услуг (SP) |
| Ошибка расшифровки токена | Журнал приложения (SP) | Истек срок действия сертификата Token-Signing или Token-Decrypting |
Пошаговое восстановление федеративной аутентификации AD FS
- Проверьте срок действия и статус сертификатов подписи токенов:
Get-AdfsCertificate; Get-AdfsProperties | Select-Object AutoCertificateRollover - Отключите проверку отзыва сертификата для проблемного приложения (Relying Party Trust): если у удаленного сервиса недоступен CRL:
Set-AdfsRelyingPartyTrust -TargetName "AppFriendlyName" -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None - Скорректируйте допустимый перекос времени (Time Skew): если серверы имеют небольшую разницу часов:
Set-AdfsRelyingPartyTrust -TargetName "AppFriendlyName" -NotBeforeSkew 5 - Принудительно обновите метаданные федерации приложения:
Update-AdfsRelyingPartyTrust -TargetName "AppFriendlyName"
Внимание: Если на сервере AD FS включена функция AutoCertificateRollover: True, сервер автоматически генерирует новые сертификаты за 20 дней до истечения. Убедитесь, что метаданные федерации своевременно передаются на сторону партнерских сервисов.
Частые вопросы (FAQ)
Что такое NotBeforeSkew в настройках AD FS?
Это допустимый интервал времени (в минутах), на который часы сервера-партнера могут отставать от часов AD FS без признания токена недействительным.
Почему при автоматической смене сертификатов ломается вход в облачные сервисы?
Многие сторонние провайдеры услуг (SP) не считывают XML-метаданные автоматически и требуют ручной загрузки нового открытого ключа Token-Signing.
Как вручную сгенерировать новый сертификат Token-Signing?
Выполните команду Update-AdfsCertificate -CertificateType Token-Signing -Urgent в PowerShell.
Где посмотреть метаданные федерации AD FS в формате XML?
По стандартному URL-адресу: https://adfs.company.com/FederationMetadata/2007-06/FederationMetadata.xml.