我构建了一个继承自AuthorizeAttribute
的自定义授权类。它返回enum AccessLevel
的列表,因为用户可以拥有多个角色。我装饰了我的控制器方法,如下面的示例,将SomeFunction限制为仅限管理员和/或审批者:
[MyAuthorization(AccessLevels = new[] { AccessLevel.Admin, AccessLevel.Approver })]
public ActionResult SomeFunction()
{
\\Do stuff...
}
我的问题是 - 有没有办法从SomeFunction中获取用户的访问级别而无需重新获取它们?或者是控制器检查后丢失的访问级别列表?
答案 0 :(得分:0)
我认为您正在寻找:
User.IsInRole("role here")
或
UserManager.FindByNameAsync("name").Roles