ITfoxtec SAML2 能否支持多个 IdP?

Ada*_*and 4 asp.net-mvc saml-2.0 itfoxtec-identity-saml2

我正在尝试让我的 ASP.NET MVC Web 应用程序向多个 IdP 提供 SSO,并且我想知道是否可以使用 ITfoxtec.SAML2 库支持此场景。

我有许多不同的客户,其中一些客户希望将 SSO 与我的服务集成。每个客户端都有不同的子域(例如business1.myapp.com、business2.myapp.com等),我需要使用其名称的唯一部分来查找其元数据并生成一个配置,该配置将和他们顶嘴。

我看到的示例代码似乎支持更传统的一 IdP 到一 SP 场景。

此外,如果有人知道非核心 ASP.NET MVC 示例应用程序,我将非常感激知道在哪里可以找到它。

And*_*ard 5

在您的情况下,我将实现一些Saml2Configuration逻辑,我可以在其中请求Saml2Configuration当前 IdP 的具体信息。Saml2Configuration然后在 中使用该特定内容AuthController

binding.ReadSamlResponse(Request.ToGenericHttpRequest(), saml2AuthnResponse)使用通用名称后,Saml2Configuration您可以在 中读取 IdP 颁发者saml2AuthnResponse.Issuer。然后加载正确的Saml2Configuration.

指向非核心 ASP.NET MVC 中继方示例应用程序的链接https://github.com/ITfoxtec/ITfoxtec.Identity.Saml2/tree/master/test/TestWebApp

--

另一种解决方案是在您的应用程序和 IdP 之间添加安全代理,例如https://www.foxys.com 。然后,安全代理会处理可熔化的 IdP,您的应用程序只需将安全代理作为一个 IdP 来信任(使用 SAML 2.0 或 OpenID Connect)。FoxIDs 也是开源且免费的。