C# 如何从访问控制器中排除角色?

C# 如何从访问控制器中排除角色?,c#,asp.net-mvc-4,authorization,C#,Asp.net Mvc 4,Authorization,我的申请表中有一个部分是不允许兼职人员使用的,但允许全职员工使用。我们的全职员工远远多于兼职员工;因此,我认为创建一个列出兼职人员并将其从该控制器中排除的角色将更容易,而不是获取全职人员的完整列表并维护该列表。我还没有找到任何真正适合我所寻找的东西。大多数解决方案似乎都扩展了Authorize的功能,但我找不到与我所寻找的功能相近的解决方案 你能给我指一下正确的方向吗 例如: [Authorize(Roles!="PartTimers")] public class MyController :

我的申请表中有一个部分是不允许兼职人员使用的,但允许全职员工使用。我们的全职员工远远多于兼职员工;因此,我认为创建一个列出兼职人员并将其从该控制器中排除的角色将更容易,而不是获取全职人员的完整列表并维护该列表。我还没有找到任何真正适合我所寻找的东西。大多数解决方案似乎都扩展了Authorize的功能,但我找不到与我所寻找的功能相近的解决方案

你能给我指一下正确的方向吗

例如:

[Authorize(Roles!="PartTimers")]
public class MyController : Controller { }

它应该是
[Authorize(Roles=“FullTimers”)]
,其他任何内容都与此处提供的框架的粒度不符

以后定义新的用户组(来宾)时会发生什么?显式授予他们访问权限,然后扫描整个应用程序以查找需要拒绝的操作,这要安全得多

WebForms框架确实提供了
功能,但它主要与
角色=“*”
用户=“?”
一起使用,这在这里并不适用

我认为创建一个列出兼职人员并将其从控制器中排除的角色比获得全职人员的完整列表并维护该列表更容易


“维持名单”的努力与成员人数不成正比。不管怎样,你都需要在报名表上打个复选框什么的

它应该是
[Authorize(Roles=“FullTimers”)]
,其他任何东西都不符合这里的外汇规则。以后定义新的用户组(来宾)时会发生什么情况?这是一个工资单应用程序。所有员工都可以使用他们的时间表工作。只有全职人才可以申请休假。我更愿意排除少数无法访问此页面的人,然后维护一个可以访问此页面的人的列表。否则,我只会以默默无闻的方式进行保护。我将删除菜单选项,然后他们将找不到页面。我将删除菜单选项-这根本不安全。而且“维护列表”的努力与成员数量不成正比。不管怎样,你都需要在报名表上打个复选框什么的。