如何在mvc 5中创建一个部门管理员角色来只访问特定的部门记录



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

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

StaffNumber  WindowsLogon  Forename Surename  AccessType       
12345        kesi_k        kesi     kesi      AdminRole

在您的控制器中,您需要编写代码才能使这一切生效。

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

所以

自定义角色提供程序

在MVC 的ASP.NET标识中使用角色

会员资格和授权

最新更新