如何创建部门管理员角色以仅访问mvc 5中的特定部门记录

时间:2015-11-04 06:57:21

标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-5 entity-framework-6 asp.net-identity

我是MVC ASP.Net的新手。我需要在我的MVC 5 EF 6项目中创建两个管理员角色。第一个角色是管理员角色,可以访问整个记录。另一个角色只是访问登录用户所属的特定部门记录。请建议完成此任务的最佳方法?

1 个答案:

答案 0 :(得分:0)

在您的数据库中创建一个用户表(即名为Users)。然后插入人员详细信息,例如StaffNumber,WindowsLogon(如果适用),ForeName,Surname和AccessType(请查看下图)。在AccessType下声明您的角色(即AdminRole和AdminRole2)。这允许您的应用程序检测用户是谁以及他们是什么管理员角色。

@Autowired

在您的控制器中,您需要编写代码才能使此全部生效。

另一种方法是,根据您拥有的用户数量,让您的系统管理员创建主动目录组,在您需要的情况下,您需要两个。然后将用户放入两个组中的一个。然后,在您的控制器中,您将使用User.IsInRole来确定哪个用户应该看到您想要的内容。希望以下链接对您有用。

SO

Custom Role Providers

Working with Roles in ASP.NET Identity for MVC

Membership and Authorization