【发布时间】:2015-05-27 03:02:25
【问题描述】:
我有一个带有后端的 MVC5 项目来配置哪个角色可以访问哪个菜单。实现基于角色的授权的正常方式是这样的。
[Authorize(Roles="Admin")]
public ActionResult UpdateProduct(ProductModel model)
{
//do something
return View(model);
}
因为我需要角色是动态的,所以我正在考虑这样的事情。
[Authorize(Roles=GetRoles("UpdateProduct"))]
public ActionResult UpdateProduct(ProductModel model)
{
//do something
return View(model);
}
显然它不起作用,因为属性是静态元数据。
我环顾四周,发现了这个MVC 3 dynamic authorization of multiple roles and users,但有没有更简洁的方法来实现这一点?
注意:我试图避免在每个方法中调用User.IsInRole。
【问题讨论】:
标签: c# asp.net-mvc authorization asp.net-identity authorize-attribute