SAML 注销未正确完成



将SAML LogoutRequest发送到ADFS IdP时,我遇到ADFS端错误:

Microsoft.IdentityServer.Web.RequestFailedException: MSIS7054:SAML 注销未正确完成。 at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.BuildSamlLogoutResponse(HttpSamlMessage samlMessage) at Microsoft.IdentityServer.Web.FederationPassiveAuthentication.SamlLogout()

消息符合 SAML 标准并已签名。

我必须寻找什么?

我终于从我们的合作伙伴那里得到了更详细的日志。问题是在 pratners ADFS 服务器上我们的中继方的签名选项卡中缺少证书。此外,问题可能是缺少ADFS IIS运行进程(很可能是网络服务)的上述证书的私钥权限。SLO 现在工作正常。

联合身份验证服务在处理 SAML 身份验证请求时遇到错误。

其他数据

异常详情:

Microsoft.IdentityModel.Protocols.XmlSignature.SignatureVerificationFailedException: ID4037:无法从以下安全密钥标识符"SecurityKeyIdentifier"解析验证签名所需的密钥

IsReadOnly = False,

计数 = 1,

Clause[0] = Microsoft.IdentityServer.Tokens.MSISSecurityKeyIdentifierClause

'。确保使用所需的密钥填充安全令牌解析程序。

at Microsoft.IdentityModel.Protocols.XmlSignature.EnvelopedSignatureReader.ResolveSigningCredentials()

at Microsoft.IdentityModel.Protocols.XmlSignature.EnvelopedSignatureReader.OnEndOfRootElement()

at Microsoft.IdentityModel.Protocols.XmlSignature.EnvelopedSignatureReader.Read()

at System.Xml.XmlReader.ReadEndElement()

at Microsoft.IdentityServer.Protocols.Saml.SamlProtocolSerializer.ReadLogoutRequest(XmlReader reader)

at Microsoft.IdentityServer.Protocols.Saml.SamlProtocolSerializer.ReadSamlMessage(XmlReader reader, NamespaceContext context)

at Microsoft.IdentityServer.Protocols.Saml.HttpSamlBindingSerializer.ReadProtocolMessage(String encodedSamlMessage)

at Microsoft.IdentityServer.Protocols.Saml.Contract.SamlContractUtility.CreateSamlMessage(MSISSamlBindingMessage message)

at Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.Logout(LogoutRequest logoutRequest)

at Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.ProcessRequest(Message requestMessage)

最新更新