Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何向控制器上具有全局授权的操作添加特定角色_Asp.net_Asp.net Mvc 5_Asp.net Identity - Fatal编程技术网

Asp.net 如何向控制器上具有全局授权的操作添加特定角色

Asp.net 如何向控制器上具有全局授权的操作添加特定角色,asp.net,asp.net-mvc-5,asp.net-identity,Asp.net,Asp.net Mvc 5,Asp.net Identity,我有一个拥有特定角色授权的控制器 [Authorize(Roles = "admin")] public class PanelController : Controller { } 现在我想要一个角色用户也可以访问我的操作 但是当我这样做的时候,我不工作 [Authorize(Roles = "admin")] public class PanelController : Controller { public ActionResult Index() {

我有一个拥有特定角色授权的控制器

[Authorize(Roles = "admin")]
public class PanelController : Controller
{

}
现在我想要一个角色用户也可以访问我的操作 但是当我这样做的时候,我不工作

[Authorize(Roles = "admin")]
public class PanelController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    [Authorize(Roles = "admin,user")]
    public ActionResult MyAction()
    {
        return View();
    }
}
在MyAction方法中,角色为user的用户没有访问权限。 我使用asp.net mvc5和identity 2。
如果有人能帮助我,我将非常高兴。

当应用于控制器和操作时,授权属性的作用是
角色。因此,在这种情况下,
用户
角色将不起作用,因为控制器属性将使正在执行的和操作无效


您可以在控制器上使用
User
角色,并将
Admin
角色应用于所有其他操作。如果您的管理员拥有分配给他们的用户角色,这将起作用。

我知道这一点。但我的行为太多了,所以我想用另一种方式来做。非常感谢你的回答