SAML 2 ADFS 2.0中的签名错误

时间:2013-05-09 02:50:20

标签: single-sign-on wif adfs2.0 saml-2.0 shibboleth

在我们的SSO场景中,我们使用ADFS 2.0作为IDP,使用Shibboleth作为SP。这是SP发起的登录。配置完成后,当我尝试在Shibboleth和ADFS 2.0之间建立通信(抛出浏览器重定向)时,ADFS 2.0会抛出以下错误。

  

SAML邮件签名的验证失败。   邮件发布者:http://sampleserver/adfs/services/trust   例外细节:   MSIS1015:服务器需要签名SAML AuthenticationRequest但不存在签名。

活动ID - 320 相关事件ID - 364

> Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolSignatureVerificationException:
> MSIS1015: Server required signed SAML AuthenticationRequest but no
> signature present.    at
> Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.ValidateSignatureRequirements(SamlMessage
> samlMessage)    at
> Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.Issue(IssueRequest
> issueRequest)    at
> Microsoft.IdentityServer.Service.SamlProtocol.SamlProtocolService.ProcessRequest(Message
> requestMessage)

我们还没有使用任何签名。我还在ADFS属性中将 SignedSamlRequest 设置为false。在Shibboleth签署SAML也被禁用。

我在Microsoft网站上找不到任何信息 - 除了此类错误的通用指南。

请就此错误提出建议。

1 个答案:

答案 0 :(得分:0)

经过大量分析后,我找到了解决方案。这是一个Shibboleth配置问题。在应用程序默认值部分中,实体ID应该对应用程序是唯一的。

  

ApplicationDefaults signing =“false”entityID =“http://受保护应用程序的URL”                           REMOTE_USER =“eppn persistent-id targeted-id”

当sigining设置为true时,会发生此错误的另一种变体。这将导致ADFS中的签名不匹配错误。