带有ADFS idp的saml。 rutime错误,在adfs idp中导入sp非签名元数据没有问题,但我在运行时遇到问题:
在idp身份验证之后,在成功身份验证上,在idp页面上我收到了如下信任错误:
The request specified an Assertion Consumer Service URL
'https://test.it/au/login' that is not configured on the relying party 'microsoft:identityserver:test.it'.
Assertion Consumer Service URL: https://test.it/au/login Relying party: microsoft:identityserver:test.it
that is a prefix match of the AssertionConsumerService URL 'https://test.it/au/login' specified by the request.
This request failed.
MY SP METADATA是这样的:
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" ID="test.it" entityID="test.it">
<md:SPSSODescriptor AuthnRequestsSigned="false"
WantAssertionsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<md:KeyDescriptor use="signing">
<md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
Location="https://test.it:443/au/login" index="0" isDefault="true"/>
我可以补充一下: 如果我从/adfs/ls/idpinitiatedsignon.htm启动auth进程 我选择我的sp提供者(所以我排除了saml2p上的问题:AuthnRequest) a有一个帖子重定向到https://test.it/au/lo杜松子酒“ 我想知道我在idp上的端点是如何在它上面有空白的。
我发现这篇文章似乎在解释 http://social.technet.microsoft.com/wiki/contents/articles/4039.ad-fs-2-0-the-request-specified-an-assertion-consumer-service-url-that-is-not-configured-on-the-relying-party.aspx 简而言之,它说:
有两种选择:
配置RP,以便在AuthnRequest中指定AssertionConsumerService
配置RP以在匹配的AuthnRequest中发送AssertionConsumerService值 AD FS 2.0中RP信任的“端点”选项卡上的AssertionConsumerService值。
您的想法
如果我使用entityID =“https://test.it:443/au/login”生成元数据 而不是entityID =“test.it”可以避免这个安全问题吗?
或者我应该删除saml:request中的AssertionConsumerService(是否可以通过配置)?
或者idp经理应该做更好的配置吗?
答案 0 :(得分:6)
不确定它是否与您面临的问题相同,但在我的最后却遇到同样的错误,问题是我没有在服务提供商处添加断言端点作为标识提供程序中AD FS中的SAML断言消费者端点。
值得一试,无论如何:)在IdP的mmc
中,添加AD FS管理单元。然后在AD FS
&gt;下找到您的SP配置Relying Party Trusts
。我叫Test SSO
。右键单击它,选择Properties
,然后在Endpoints
选项卡上,检查您的服务提供商断言端点URL是否列在SAML Assertion Consumer Endpoints
下。
我的工作配置是
Endpoint type: SAML Assertion Consumer
Binding: POST
Default: Yes
Index: 0
Trusted URL: https://1337.local/adfs/ls
Trusted URL
是我在SP上的断言端点,即ADFS在经过身份验证后发布SAML有效负载的位置。
答案 1 :(得分:0)
我有一个类似的问题。 我遵循@DanielSmedegaardBuus的建议,但没有发现断言消费者。 在我导入到adfs的metadata.xml中,服务提供者的URL为http。 如果您尝试手动添加带有http的链接,则会显示“仅允许使用https”。 似乎在导入xml时,它只是忽略了那些http url。所以我必须将我的服务提供商配置为使用https,然后它才能工作。