Ошибка входа SSO во время продления сертификата SP посредством ADFS в качестве IDP

Ошибка входа SSO во время продления сертификата SP посредством ADFS в качестве IDP.

Сбой SSO при обновлении нового сертификата SP для IdP (ADFS).

Ошибка: недопустимый код состояния в ответе.

Действия по изучению проблемы.

  1. Сохраните файл трассировки SAML для поиска ответа SAML
Добавленное пользователем изображение
  • Откройте Notepad++ для установки Щелкните здесь
    • Вставьте сообщение для поиска ответа SAML непосредственно на языке XML.
  1. Проверьте, присутствуют ли атрибуты в ответе SAML от IdP
  2. Если вы не видите какие-либо атрибуты, это означает, что Webex не получает их от IdP. Исходя из этого, проблему необходимо изучить на стороне IdP
  3. Проверьте конфигурацию проверяющей стороны Webex ADFS Щелкните здесь
  4. Если конфигурация в порядке, проверьте журналы событий
  5. Проверьте, нет ли ошибок ADFS в журналах Windows. Для этого выполните следующие действия.
  • Найдите в журналах Windows код ошибки журнала событий ADFS 364. В сведениях о событии указан недействительный сертификат. В таких случаях узлу ADFS не разрешается проверка сертификата через порт 80 брандмауэра.
  • Разрешите IdP доступ к порту 80 через брандмауэр к Интернету для выполнения проверок CRL.
    • Если порт открыт, выполняйте дальнейшие действия в связи с Microsoft и соответствующим брандмауэром.
    • Если порт 80 не открыт в брандмауэре или проверки CRL не работают, отключите CRL
  1. На сервере ADFS щелкните Журнал событий > Приложения > ADFS > Администратор. Найдите журнал ошибок с меткой времени, в которое вы воспроизвели вход. При отображении сообщения об ошибке
Ошибка "Во время пассивного запроса федерации произошла ошибка.
Дополнительные данные
Имя протокола: Saml
Проверяющая сторона: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
Сведения об исключении:
Microsoft.IdentityServer.Service.SecurityTokenService.RevocationValidationException: MSIS3014: Сертификат шифрования отношения доверия с проверяющей сторонойhttps://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx', идентифицированный отпечатком '754B9208F1F75C5CC962750F3675C5D129471D80, недействителен. Это может означать, что сертификат был отозван, срок его действия истек или цепочка сертификатов не является доверенной.
at Microsoft.IdentityModel.Threading.AsyncResult.End(IAsyncResult result)
at Microsoft.IdentityModel.Threading.TypedAsyncResult1.End(IAsyncResult result) at Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, IList1& identityClaimSet, List1 additionalClaims) at Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, List1 additionalClaims)
at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue(HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String sessionState, String relayState, String& newSamlSession, String& samlpAuthenticationProvider, Boolean isUrlTranslationNeeded, WrappedHttpListenerContext context, Boolean isKmsiRequested)
at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerContext context, HttpSamlRequestMessage httpSamlRequest, SecurityTokenElement onBehalfOf, String relyingPartyIdentifier, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired, String& samlpSessionState, String& samlpAuthenticationProvider)at  Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSerializedToken(HttpSamlRequestMessage httpSamlRequest, WrappedHttpListenerContext context, String relyingPartyIdentifier, SecurityTokenElement signOnTokenElement, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired) at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSecurityToken(SamlSignInContext context, SecurityToken securityToken, SecurityToken deviceSecurityToken)
at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(ProtocolContext context)
at Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext protocolContext, PassiveProtocolHandler protocolHandler)
at Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext context)"

Решение.
  • Откройте Powershell в ADFS в качестве администратора и выполните команду:
Get-AdfsRelyingPartyTrust -Identifier 'https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx'  | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
Примечание. Обязательно введите URL идентификатора в кавычках. URL идентификатора можно найти в сообщении об ошибке, скопировать и ввести.
 
ЛИБО
  • Откройте Powershell в ADFS в качестве администратора и выполните команду:
Get-AdfsRelyingPartyTrust -Name "Cisco Webex" | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None-EncryptionCertificateRevocationCheck None
 
Примечание. Убедитесь в том, что имя отношения доверия проверяющей стороны совпадает с именем, созданным клиентом в его ADFS, и заключено в двойные кавычки.
  • Протестируйте SSO в Control Hub для проверки.

Была ли статья полезной?