Ошибка входа SSO во время продления сертификата SP посредством ADFS в качестве IDP
Ошибка входа SSO во время продления сертификата SP посредством ADFS в качестве IDP.
Сбой SSO при обновлении нового сертификата SP для IdP (ADFS).
Ошибка: Недействительный код состояния в ответном сообщении.
Действия по изучению проблемы.
- Сохраните трассировку SAML, чтобы найти ответ SAML.
- Добавьте подключаемый модуль SAML Message Decoder в браузер.
Для Chrome. https://chrome.google.com/webstore/detail/saml-message-decoder/mpabchoaimgbdbbjjieoaeiibojelbhm?hl=en
Для Firefox. https://addons.mozilla.org/en-US/firefox/addon/saml-message-decoder-extension/ - Откройте подключаемый модуль и щелкните Копировать это сообщение.
- Откройте Notepad++, чтобы установить Щелкните здесь.
- Вставьте сообщение для поиска ответа SAML непосредственно на языке XML.
- Проверьте, присутствуют ли атрибуты в ответе SAML от IdP.
- Если вы не видите какие-либо атрибуты, это означает, что Webex не получает их от IdP. Поэтому эту проблему необходимо исследовать с помощью IdP.
- Для проверки конфигурации стороны в ADFS Webex, зависящей от конфигурации стороны, щелкните здесь.
- Если конфигурация в порядке, проверьте журналы событий.
- Проверьте, нет ли ошибок ADFS в журналах Windows. Для этого выполните следующие действия.
- Найдите в журналах Windows код ошибки журнала событий ADFS 364. В сведениях о событии указан недействительный сертификат. В таких случаях узлу ADFS не разрешается проверка сертификата через порт 80 брандмауэра.
- Разрешите поставщику удостоверений доступ к порту 80 через брандмауэр в Интернет, чтобы он мог выполнять проверки CRL.
- Если порт открыт, следите за Microsoft и его брандмауэром.
- Если порт 80 не открыт в брандмауэре или проверки CRL не работают, отключите CRL.
- На сервере ADFS щелкните Журнал событий > Приложения > ADFS > Администратор. Найдите журнал ошибок с меткой времени, в которое вы воспроизвели вход. Если отображается следующая ошибка:
Ошибка: "Во время пассивного запроса федерации произошла ошибка.
Имя протокола дополнительных данных
: Saml
Проверяющая сторона: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
Сведения об исключении:
: 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)
в Microsoft.IdentityModel.Threading.TypedAsyncResult1.End(результат IAsyncResult) в Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, IList1& identityClaimSet, List1 additionalClaims) в Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, List1 additionalClaims)в 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)в Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerContext context, HttpSamlRequestMessage httpSamlRequest, SecurityTokenElement onBehalfOf, String relyingPartyIdentifier, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired, String& samlpSessionState, String& samlpAuthenticationProvider)atMicrosoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSerializedToken(HttpSamlRequestMessage httpSamlRequest, WrappedHttpListenerContext context, String relyingPartyIdentifier, SecurityTokenElement signOnTokenElement, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired) в Microsoft.IdentityServer.Web.Protocols.Saml.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSecurityToken(SamlSignInContext context, SecurityToken securityToken, SecurityToken deviceSecurityToken)в Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(ProtocolContext context)в Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext protocolContext, PassiveProtocolHandler protocolHandler)в 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 идентификатора можно найти в сообщении об ошибке, скопировать и вставить его.
- Необходимо использовать Control Hub для решения "Webex для правительственных организаций (FedRAMP)" https://admin-usgov.webex.com/.
ИЛИ
- Откройте Powershell в ADFS в качестве администратора и выполните команду:
Get-AdfsRelyingPartyTrust -Name "Cisco Webex" | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
Примечание. Обязательно введите имя отношения доверия с проверяющей стороной, совпадающее с именем, созданным клиентом в ADFS, в двойных кавычках.
- Протестируйте SSO в Control Hub для проверки.
Была ли статья полезной?