我有一个关于[Authorization]
注释的问题。我有一个带有[Authorization(Roles ="admin")
注释的控制器。在控制器中,我有一个动作不需要是管理员,但仍然登录。这是如何完成的?我曾尝试创建一个自定义AuthorizationAttribute
类,并将其放置在动作上。这不起作用,有没有办法来覆盖[Authorization]
注释?asp.net MVC中的白名单控制器操作5
干杯。
[Authorize(Roles = "admin")]
public class UserController : Controller
{
[OwnDataAuthorize]
public async Task<ActionResult> Details(string id)
{
//.....
}
//...
}
创建一个自定义类应能正常工作。你必须设计两个自定义类。首先将充当** AuthorizationAttribute **,其次将仅仅是一个标识符属性(比如** IgnoreRoleAttribute **),您必须将其放置在您不希望检查任何角色的操作上。然后在授权的情况下,您可以检查源操作方法是否应用了IgnoreRoleAttribute,并且您可以在此处跳过角色授权:) –
我在那里工作,但由于mvc的bug,我需要在自定义类中实现另一个接口5.来源:[link](http://weblogs.asp.net/imranbaloch/new-filter-overrides-in-asp-net-mvc-5-and-asp-net-web-api-2) – kakebake