我们要求我们的MVC客户端应用程序通过登录自己的IDP为多个客户提供SSO功能。 但是其中一些提供了我们已经使用WSFederationAuthenticationModule支持的SAML 1.1,其中一些最近发送的SAML 2.0令牌导致我们的MVC应用程序失败。
我是否可以使用WSFederationAuthenticationModule来支持SAML 2.0令牌?
还有什么其他替代建议吗?
答案 0 :(得分:0)
问题是1.1强制执行完整的URI,例如
“http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress”
而1.2仅允许“emailaddress”。
您可以使用GetOutputClaimsIdentity
并且有类似的内容:
outputIdentity.Claims.Add(新版权声明(ClaimTypes.xxx,“其余URI”+电子邮件地址));
答案 1 :(得分:0)
我想我找到了解决问题的方法。 扩展Saml2SecurityTokenHandler解决了我的问题。 WsFedAuthenticationModule能够成功地将saml2标记转换为saml 1.1断言。