ASP.NET MVC的身份管理和SSO

时间:2014-04-02 15:47:48

标签: asp.net asp.net-mvc single-sign-on claims-based-identity thinktecture-ident-server

我目前正在评估可能的身份管理(IdM)解决方案,这些解决方案可以跨应用程序实现单用户身份存储和SSO。

我非常倾向于 Thinktecture IdentityServer v2 ,但我无法验证是否可以满足以下所有要求。

我也熟悉并使用 MembershipReboot 项目作为ASP.NET成员资格提供程序的替代品。我喜欢MR提供了很多我需要的自助服务和pwd管理要求,但我并不完全理解这将如何适应"使用IdentityServer - 并且我并不是指I * Repository接口的实际实现,而是来自高级架构。

有人会告诉我以下哪些是可能的,或者可能提供其他可能更好地满足这些要求的选项?

  • 支持ASP.NET(WebForms和MVC)
  • 维护中央用户身份存储
  • 自助服务密码管理
  • 密码策略配置
  • 能够对SQL用户以及SQL存储中的用户进行身份验证(集中) store(forms) - 这意味着我们希望在同一个应用程序中拥有一些内部用户(AD)和一些自定义(表单/ sql)用户
  • 自定义页面(例如登录,自助服务等)
  • 特定于每个应用程序的角色/声明管理(我知道这是 授权,而不是身份验证,但我需要了解如何 管理与中央用户身份相关的特定于应用的声明)
  • 权限管理(不确定这应该是应用程序还是集中管理)
  • 跨越不同领域的SSO
  • 支持SAML 2.0,JWT,WsFed等标记标准
  • 开源或低成本
  • 可扩展(较低优先级)

基于上述要求的任何建议/建议或意见?

1 个答案:

答案 0 :(得分:1)

如果您正在使用IdentityServer,那么您正在进行单点登录。这意味着只要您拥有可以处理IdP支持的任何协议的库,您的应用程序就可以是任何技术。 IdentityServer v2主要支持基于浏览器的应用程序的WS-Fed。 IdentityServer v3将首先关注OIDC(OpenID Connect),但最终还将支持WS-Fed。

MembershipReboot是一个身份管理库。这意味着它会为您的用户存储密码和其他身份数据等内容。它可以由IdentityServer v2和v3使用。

大多数(如果不是全部)您列出的内容都可以通过任一平台实现。有些人需要您自定义编码。

IdentityServer v3很快会在alpha 非常