single-sign-on - 带有 ADFS 的 SSO 的 SAML 错误 - MSIS0038 : SAML Message has wrong signature

标签 single-sign-on saml-2.0 adfs adfs2.0 passport-saml

您好,我正在尝试使用 SSO 直接对我的客户的用户进行身份验证到我的网站。我客户的 IDP 是 Microsoft ADFS,我使用 Passport-SAML ( https://github.com/bergie/passport-saml ) 来配置 SSO 过程。

到达我给我的客户的特殊 URL(例如: www.myClient.myCompany.com )后,用户(未经身份验证)按预期重定向到客户端登录页面。
输入凭据后,他仍然停留在登录页面 但是 SSO 工作是因为用户已通过身份验证,这意味着如果他打开一个新选项卡并转到 www.myClient.myCompany.com,他将被重定向到我的网站。

这是 ADFS 服务器日志中的错误:

The Federation Service encountered an error while processing the SAML authentication request. 

Additional Data 
Exception details: 
Microsoft.IdentityModel.Protocols.XmlSignature.SignatureVerificationFailedException: MSIS0038: SAML Message has wrong signature. Issuer: 'www.myCompany.co'.
   at Microsoft.IdentityServer.Protocols.Saml.Contract.SamlContractUtility.CreateSamlMessage(MSISSamlBindingMessage message)
   at Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.Issue(IssueRequest issueRequest)
   at Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.ProcessRequest(Message requestMessage)

MSIS0038 Error - Event ID 303

感谢您的时间!

最佳答案

我不熟悉 Microsoft ADFS 或 Passport-SAML,但是当我们遇到签名错误时,我是因为 IDp 证书的 SHA1 指纹与我们最后的不匹配。

我们通过确保证书格式正确,然后计算指纹来修复它们。

格式:
https://developers.onelogin.com/saml/online-tools/x509-certs/format-x509-certificate
指纹:
https://developers.onelogin.com/saml/online-tools/x509-certs/calculate-fingerprint

希望这是你的情况

关于single-sign-on - 带有 ADFS 的 SSO 的 SAML 错误 - MSIS0038 : SAML Message has wrong signature,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49559023/

相关文章:

asp.net - WS-Federation 登录 Asp.NET 5 MVC 6 ADFS

wordpress - Azure AD 与 Office365 连接

asp.net-mvc - ADFS 2.0 Windows 2008 R2 Web API

single-sign-on - 网站上的 Disqus SSO 集成

Python - 使用 SAML 2.0 登录站点

go - 从 Go 中的 SAML 响应中获取用户名

spring-security - 如何在运行时在spring-SAML中添加新的idp元数据

wpf - 在测试/开发期间替换 ADFS

oauth - Oauth授权码泄露怎么办

single-sign-on - 等效的 OpenID Connect 和 SAML 参与者/角色是什么?