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

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

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

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

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

  1. Создайте трассировку SAML, чтобы найти ответ SAML.
Добавленное пользователем изображение
  • Откройте Notepad++, для установки Нажмите здесь.
    • Вставьте сообщение для поиска ответа SAML непосредственно на языке XML.
  1. Проверьте, присутствуют ли атрибуты в ответе SAML от поставщика удостоверений.
  2. Если вы не видите какие-либо атрибуты, это означает, что Webex не получает их от IdP. Таким образом, проблему необходимо изучить с конца IdP.
  3. Чтобы проверить конфигурацию ADFS Webex на стороне, щелкните здесь.
  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 идентификатора можно найти в сообщении об ошибке, скопируйте и вставьте его.
  • Webex для правительственных организаций (FedRAMP) Control Hub должен использовать idbroker-f.webex.com вместо idbroker.webex.com.

ЛИБО
 

  • Откройте Powershell в ADFS в качестве администратора и выполните команду:
Get-AdfsRelyingPartyTrust -Name "Cisco Webex" | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
Примечание. Обязательно введите имя доверия отвечающей стороны так же, как и имя клиента, созданного в его ADFS, и в двойных кавычках.
 
  • Протестируйте SSO в Control Hub для проверки.
Была ли статья полезной?