2013-10-23 42 views
1

我正在使用ASP.Net和MVC4构建Web应用程序。这个Web应用程序将被其他公司使用,但我们正在托管它。我们被告知我们必须使用ADFS。我们不知道在身份验证中会传递给我们什么样的信息,但我们需要允许用户拥有角色。我假设在验证时应该返回一个用户名。所以我想我会在数据库中为管理员和超级管理员构建一个用户表。当用户过来时,我们将检查数据库中是否存在用户名,如果是,我们将从数据库中读取他们的角色。如果他们不存在于数据库中,它们是公开的。 这里所说的一切都是我需要解决的两难问题。我该如何做到这一点,而不必在应用程序的任何位置编写自定义代码来检查授权并检查角色?我想使用[AuthorizeAttribute(roles)]。我应该创建一个自定义角色提供者吗所有想法都欢迎。顺便说一下,我们不能让客户管理角色并将其传递,因为该公司是财富100强公司,他们没有时间处理这些请求。想法如何使用ASP .Net MVC4与ADFS和用户角色和信息

回答

0

我会建议看看Dominick Baier's work关于保护与索赔MVC的一些。他还与其他一些开发人员一起构建了Thinktecture,它同时具有Identity Server组件和库,用于协助处理索赔,同时抽象出一些基本细节。

至于你需要做什么的角色部分,你可以构建一个自定义的ClaimsAuthenticationManager,并对初次登录时设置的用户声明执行任何转换或添加。 Dominick拥有一些优秀的PluralSight课程,这些课程详细介绍了此过程。他还有这个free video out there,其中详细说明了约44分钟的授权部分。

我最近经历了获得ADFS设置和验证我们公司的一些MVC应用程序的工作。我所引用的资源对帮助我在这个过程中是无价的。