当通过 ADFS 将 SP 证书更新为 IDP 时 SSO 登录失败
反馈?
通过ADFS作为IDP续订SP证书时,SSO登录失败。
在IdP (ADFS)上更新新的SP证书时,SSO失败。
错误:响应中的状态代码无效。
调查步骤:
- 捕获SAML跟踪以找到SAML响应:
- 将 SAML消息解码插件添加到浏览器:
对于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++,以安装 单击此处。
- 粘贴消息以直接在XML语言中找到SAML响应。
- 检查来自IdP的SAML响应中是否包含这些属性。
- 如果您看不到任何属性,这意味着Webex不会从IdP接收它们。 因此,这个问题需要从IdP端进行调查。
- 要检查ADFS Webex依赖派对配置,请单击此处。
- 当配置看起来良好时,请检查事件查看日志。
- 检查Windows日志中的ADFS错误:
- 在Windows日志中,查找ADFS事件日志错误代码364。 事件详细信息标识无效证书。 在这些情况下,ADFS主机不允许通过端口80上的防火墙验证证书。
- 允许IdP通过防火墙访问端口80,以便能够执行CRL检查。
- 如果端口已打开,请跟进Microsoft及其防火墙。
- 如果防火墙上未打开端口80,或者CRL检查不起作用,则请禁用CRL。
- 在ADFS服务器上>单击事件查看器 > 应用程序 > ADFS > 管理员 >在复制登录时搜索错误日志。 如果您看到以下错误:
错误: “联邦被动请求期间遇到错误。
其他数据
方案名称: 萨姆
依赖方: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
异常详细信息:
方案名称: 萨姆
依赖方: https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx
异常详细信息:
Microsoft.IdentityServer.Service.SecurityTokenService.RevocationValidationException: msis3014: 由缩写“754B9208F1F75C5CC962750F3675C5D129471D80”标识的依赖方信托“https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxx”的加密证书无效。 它可能表示证书已被撤销、已过期,或者证书链不可信。
在Microsoft.IdentityModel.Threading.AsyncResult.End(IAsyncResult结果)
在Microsoft.IdentityModel.Threading.TypedAsyncResult1.End(IAsyncResult result)在Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken request, IList1& identityClaimSet, List1 additionalClaims)在Microsoft.IdentityServer.Web.WSTrust.SecurityTokenServiceManager.Issue(RequestSecurityToken请求, List1 additionalClaims)
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue(HttpSamlRequestMessagehttpSamlRequestMessage、SecurityTokenElement代表、String会话状态、String&newSamlSession、String&samlpAuthenticationProvider、Boolean isUrlTranslationNeeded、WrappedHttpListenerContext、Boolean isKmsiRequested)
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerContext,HttpSamlRequestMessageSamlRequest,SecurityTokenElement代表,StringRelyingPartyIdentifier,BooleanIsKmsiRequested,BooleanIsApplicationProxyTokenRequired,String&samlpSessionState,String&samlpAuthenticationProvider)at Microsoft.IdentityServer.Web.Protocols.SamlSignInContext,SecurityTokenDeviceSecurityTokenTokenBuildSignInContext,SecurityTokenDeviceSecurityToken)
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(ProtocolContext context)
在Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext protocolContext, PassiveProtocolHandler protocolHandler)
在Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext)”
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolManager.Issue(HttpSamlRequestMessagehttpSamlRequestMessage、SecurityTokenElement代表、String会话状态、String&newSamlSession、String&samlpAuthenticationProvider、Boolean isUrlTranslationNeeded、WrappedHttpListenerContext、Boolean isKmsiRequested)
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.RequestBearerToken(WrappedHttpListenerContext,HttpSamlRequestMessageSamlRequest,SecurityTokenElement代表,StringRelyingPartyIdentifier,BooleanIsKmsiRequested,BooleanIsApplicationProxyTokenRequired,String&samlpSessionState,String&samlpAuthenticationProvider)at Microsoft.IdentityServer.Web.Protocols.SamlSignInContext,SecurityTokenDeviceSecurityTokenTokenBuildSignInContext,SecurityTokenDeviceSecurityToken)
在Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.Process(ProtocolContext context)
在Microsoft.IdentityServer.Web.PassiveProtocolListener.ProcessProtocolRequest(ProtocolContext protocolContext, PassiveProtocolHandler protocolHandler)
在Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext)”
这是分辨率:
- 在ADFS上以管理员身份打开 Powershell 并运行命令:
Get-AdfsRelyingPartyTrust -标识符 'https://idbroker.webex.com/39xxxx4ea-4xxe-416e-bd4f-4cxxxxxxx' | Set-AdfsRelyingPartyTrust -SigningCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
注意:
- 确保在引号中输入标识符URL,并且标识符URL可以在错误消息中找到,复制并粘贴它。
- Webex for Government (FedRAMP)控制中心必须使用 https://admin-usgov.webex.com/。
或
- 在ADFS上以管理员身份打开 Powershell 并运行命令:
Get-AdfsRelyingPartyTrust -Name "Cisco Webex" |设置-AdfsRelyingPartyTrust -SignCertificateRevocationCheck None -EncryptionCertificateRevocationCheck None
注意:请确保输入回复方信任的名称与在ADFS上创建的客户相同,并以双引号的方式输入。
- 在“控制”中心上测试SSO以验证。
这篇文章对您有帮助吗?