我一直在尝试在我的MVC4应用程序上实现基于角色的安全性,以便某些控制器操作被阻止给非管理员成员。我在MSDN上找到了这个信息页面:http://msdn.microsoft.com/en-us/library/5k850zwb%28v=vs.100%29.aspx
有人可以使用以下行告诉我哪里是管理组本身的最佳位置:
Roles.CreateRole("Admin");
我知道我想检查我的用户数据库表并检查Home Controller Index上的IsAdmin列,但我不确定在哪里创建实际的Admin角色本身。任何帮助将不胜感激。
答案 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");