【问题标题】:Implementing Windows Identity Foundation with MVC 4使用 MVC 4 实现 Windows Identity Foundation
【发布时间】:2012-11-16 08:00:05
【问题描述】:

我有一组应用程序访问同一个数据库来验证用户身份。这个想法是建立一个门户,用户可以在其中登录一次,然后能够访问他有权访问的应用程序 (SSO)。用户可以使用用户名/密码或他的域帐户登录。

我是 WIF 的新手,我正在尝试看看用 WIF 实现它是否是个好主意。我正在使用 MVC 4 和 Visual Studio 2012,并且我已经从扩展库下载了访问和身份工具。但似乎它使用工具中的本地 STS 来模仿 STS 网站。我的问题是..

【问题讨论】:

    标签: asp.net-mvc-4 visual-studio-2012 single-sign-on .net-4.5 wif


    【解决方案1】:

    因此,如果我正确理解这些要求,您希望对位于不同域的多个 Web 应用程序进行单点登录。如果是这种情况,那么带有令牌的基于声明的身份是一个很好的解决方案。 WIF 支持这一点,好消息是 WIF 是 .NET 4.5 的一部分,而不是现在的单独库。 Access & Identity 工具附带的 STS 仅用于开发期间的调试和测试。您可以使用 Active Directory 联合身份验证服务或 Windows Azure AppFabric 访问控制来创建 STS。在这方面Pluralsight 上有一些很好的培训课程。我推荐的一门课程是 Dominick Baier 的“Identity and Access Control in ASP.NET 4.5”。您可以使用Pluralsight's free trial 试用该课程。关于这个主题的另一个很好的信息来源是Dominick's blog。他还是open source project called IdentityServer 的主要作者,这是一个使用 .NET 4.5、MVC 4、Web API 和 WCF 构建的轻量级安全令牌服务。项目中有例子。

    【讨论】:

    • 嗨,凯文,感谢您的回复。如果它是同一个域中的多个 Web 应用程序怎么办?那么 WIF 仍然是一个好的解决方案吗?还是进行自定义身份验证更好?
    • 为此构建和维护 STS 可能是多余的。我仍然会使用基于声明的身份,它是 .NET 4.5 不可或缺的一部分,以及一些更新的授权技术,可以将您的安全模型与应用程序分离。您可以在此处msdn.microsoft.com/en-us/library/eb0zx8fc(v=vs.100).aspx 找到有关在应用程序中使用基于表单的身份验证的信息。您只需创建一个自定义成员资格提供程序即可将 .NET 安全框架与您的数据库 asp.net/web-forms/videos/how-do-i/… 集成。
    猜你喜欢
    • 1970-01-01
    • 2011-02-13
    • 2011-10-04
    • 2011-02-06
    • 2014-07-18
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    相关资源
    最近更新 更多