SSO falha de logon ao renovar o certificado SP através do ADFS como IDP
Comentários?
SSO falha de logon ao renovar o certificado SP através do ADFS como IDP.
Falha de SSO ao atualizar o novo certificado SP no IdP (ADFS).
Erro: código de status inválido na resposta.
Etapas para investigar:
- Capture um rastreamento SAML para encontrar a resposta SAML:
- Adicione o plug-in Decodificador de mensagens SAML ao navegador:
Para Chrome: https://chrome.google.com/webstore/detail/saml-message-decoder/mpabchoaimgbdbbjjieoaeiibojelbhm?hl=en
Para Firefox: https://addons.mozilla.org/en-US/firefox/addon/saml-message-decoder-extension/ - Abra o plug-in e clique em Copiar esta mensagem .
- Abra o Bloco de Notas++ para instalar Clique aqui .
- Colar a mensagem para encontrar a resposta SAML no idioma XML diretamente.
- Verifique se os atributos estão presentes na resposta SAML do IdP.
- Se você não vir nenhum atributo, isso significa que o Webex não está recebendo-os do IdP. Portanto, o problema precisa ser investigado a partir do término do IdP.
- Para verificar o ADFS Webex que depende da configuração da parte, Clique aqui .
- Quando a configuração estiver boa, verifique os registros do visualizador de eventos.
- Verifique se há erros do ADFS nos registros do Windows:
- Nos registros do Windows, procure o código de erro 364 do registro de eventos do ADFS. Os detalhes do evento identificam um certificado inválido. Nesses casos, o host ADFS não é permitido através do firewall na porta 80 para validar o certificado.
- Permita que o IdP acesse a porta 80 através de um firewall para a Internet, para que ele possa realizar verificações de CRL.
- Se a porta estiver aberta, faça o acompanhamento com a Microsoft e seu firewall.
- Se a porta 80 não estiver aberta no firewall ou as verificações CRL não estiverem funcionando, desative o CRL.
- No servidor ADFS > Clique em Visualizador de eventos > Aplicativos > ADFS > Admin > Pesquisar o registro de erros no carimbo de data/hora em que você replicou o logon. Se você vir o seguinte erro:
Erro : "Ocorreu um erro durante a solicitação passiva da federação.
Dados adicionais
Nome do protocolo: Saml
Parte de confiança: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
Detalhes da exceção:
Nome do protocolo: Saml
Parte de confiança: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
Detalhes da exceção:
Microsoft.IdentityServer.Service.SecurityTokenService.RevocationValidationException: MSIS3014: O certificado de criptografia da confiança do parte subjacente "https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx" identificado pela miniatura "754B9208F1F75C5CC962750F3675C5D129471D80" não é válido. Ele pode indicar que o certificado foi revogado, expirou ou que a cadeia de certificados não é confiável.
em Microsoft.IdentityModel.Threading.AsyncResult.End (resultado IAsyncResult)
em Microsoft.IdentityModel.Threading.TypedAsyncResult1.End(IAsyncResultado do resultado) em Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, IList1& identityClaimSet, List1 additionalClaims) em Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, List1 additionalClaims)
em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue(HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String sessionState, String relayState, String& newSamlSession, String& samlpAuthenticationProvider, Booleano isUrlTranslationNeeded, WrappedHttpListenerContext context, Booleano isKmsiRequested)
em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerSolicitar contexto de Contexto, HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String relyingPartyIdentifier, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired, String& samlpSessionState, String& samlpSessionState, String& samlpAuthenticationProvider)at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSerializedToken(HttpSamlRequestMessage httpSamlRequest, WrappedHttpListenerContext contexto, String relyingPartyIdentifier, SecurityTokenElement signOnTokenElement, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired) em Microsoft.IdentityServer.Web.Protocols.SamlSignInResponseCoreWithSecurityToken(
Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(Contexto do ProtocolContext)
em Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext ProtoContext, PassiveProtocolHandler protocoller)
no Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext context)"
em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue(HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String sessionState, String relayState, String& newSamlSession, String& samlpAuthenticationProvider, Booleano isUrlTranslationNeeded, WrappedHttpListenerContext context, Booleano isKmsiRequested)
em Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerSolicitar contexto de Contexto, HttpSamlRequestMessage httpSamlRequestMessage, SecurityTokenElement onBehalfOf, String relyingPartyIdentifier, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired, String& samlpSessionState, String& samlpSessionState, String& samlpAuthenticationProvider)at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.BuildSignInResponseCoreWithSerializedToken(HttpSamlRequestMessage httpSamlRequest, WrappedHttpListenerContext contexto, String relyingPartyIdentifier, SecurityTokenElement signOnTokenElement, Boolean isKmsiRequested, Boolean isApplicationProxyTokenRequired) em Microsoft.IdentityServer.Web.Protocols.SamlSignInResponseCoreWithSecurityToken(
Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(Contexto do ProtocolContext)
em Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext ProtoContext, PassiveProtocolHandler protocoller)
no Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext context)"
Aqui está a resolução:
- Abra Powershell no ADFS como administrador e execute o comando:
Get-AdfsRelyingPartyTrust -Identifier 'https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx ' | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
Nota :
- Certifique-se de inserir a URL do identificador entre aspas e a URL do identificador pode ser encontrada na mensagem de erro, copie e cole-a.
- O Webex for Government (FedRAMP) Control Hub deve usar https://admin-usgov.webex.com/.
OU
- Abra Powershell no ADFS como administrador e execute o comando:
Get-AdfsRelyingPartyTrust -Nome "Cisco Webex" | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
Nota :Certifique-se de inserir o nome da parte que responde confia mesmo que o único cliente criado em seu ADFS e em aspas duplas.
- Teste o SSO no Control Hub para verificar.
Este artigo foi útil?