SAMLv2 SP已启动:一个服务提供商和多个身份提供商

时间:2010-12-15 14:42:59

标签: .net single-sign-on saml

我需要使用一个具有多个身份提供者(idps)的服务提供者,每个idp通过使用子域连接到sp,即http://subdomain1.mysite.com连接到idp1,http://subdomain2.mysite.com连接到idp2等然后我的断言消费者服务URL看起来像https://mysite.com/SAML/AssertionConsumerService.aspx

问题是我需要知道响应来自AssertionConsumerService.aspx代码的idp,以便我可以加载正确的证书。我试过发行人,回应目的地和其他没有运气的手段。

有没有人知道区分idps与响应和/或最佳做法的好方法?或者有一种标准的方法吗?

我正在使用http://www.componentspace.com/Products/SAMLv20.aspx

2 个答案:

答案 0 :(得分:2)

正如您所注意到的,如果所有IDP都有相同的ACS URL,那么Assertion中的Destination将始终相同。

每个IDP应该(必须?)至少拥有自己独特的发行人,如果他们每个人都拥有他们自己签署的公共证书。根据我的经验,PingFederate和其他服务器确保在验证响应时加载正确的配置信息。不知道为什么Issuer在这种情况下也不适合你。

您可以进入同一公司的“不同”IDP向您发送响应的情况下,使用相同的颁发者和不同的DSIG证书和属性声明,但在大多数情况下不应该发生这种情况。

HTH 伊恩

答案 1 :(得分:1)

在我们的系统中,我们有一个代表客户端的实体(我们称之为“服务域”),并要求客户端通过名称将该实体标识为Issuer元素值或Issuer SPProvidedID属性值。我们端的SPL配置(SP)与该“服务域”实体相关联,包括例如用于验证其数字签名的公钥证书。

我会说使用Issuer值比尝试关闭子域更合适。

相关问题