MVC4角色身份验证组

时间:2013-08-21 09:19:40

标签: asp.net-mvc-4 authorization roles

我一直在尝试在我的MVC4应用程序上实现基于角色的安全性,以便某些控制器操作被阻止给非管理员成员。我在MSDN上找到了这个信息页面:http://msdn.microsoft.com/en-us/library/5k850zwb%28v=vs.100%29.aspx

有人可以使用以下行告诉我哪里是管理组本身的最佳位置:

Roles.CreateRole("Admin");

我知道我想检查我的用户数据库表并检查Home Controller Index上的IsAdmin列,但我不确定在哪里创建实际的Admin角色本身。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

只需将其手动添加到数据库的webpages_Roles表中即可。

如果您想以编程方式执行此操作,请将其添加到InitializeSimpleMembershipAttribute.cs文件中的Filters文件夹中,位于以下行:

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);        

// here it REALLY is...!
if (!Roles.RoleExists("Admin"))
    Roles.CreateRole("Admin");