Web Api控制器授权 - 这些角色定义在哪里?

时间:2014-10-28 21:51:56

标签: asp.net-web-api authorize-attribute

我已经浏览了身份验证和授权的Web Api指南。我有一个跟进问题:

如果我使用以下政策进行授权:

// Restrict by role:
[Authorize(Roles="Administrators")]
public class ValuesController : ApiController { }

我在哪里设置这些角色? 我认为,这是一个中央系统,我可以去创建一个新组并添加用户吗?

2 个答案:

答案 0 :(得分:0)

在数据库中。假设您正在使用ASP.NET Identity 2.0,它将为您创建一个数据库架构(默认情况下使用LocalDB,但如果您查看,可以将连接字符串指向SQL Server Express)。它配有Roles表。然后,您可以将此角色附加给用户。

由于您似乎在寻找某种管理界面,请查看Brock Allen的ThinkTecture IdentityManager。我不完全确定它有角色管理,但是有很好的机会。

答案 1 :(得分:0)

如果您想通过代码管理角色,可以查看System.Web.Security.Roles课程:http://msdn.microsoft.com/en-us/library/system.web.security.roles(v=vs.100).aspx

它具有创建新角色,将用户添加到角色等方法。