获取已经设置为自定义授权属性的角色?

getting Roles that already set to custom Authorization attribute?

我自定义了 authorize 属性 Asp.Net 但我不知道如何获得我设置的角色当我将属性设置为方法或 class

时的属性

例如我有这个 CustomeAuthorizeAttribute

[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class CustomeAuthorizeAttribute : AuthorizeAttribute
{

    protected override bool AuthorizeCore(HttpContextBase httpContext)
    {


        if (HttpContext.Current.User.Identity.IsAuthenticated && HttpContext.Current.User.IsInRole("Super"))
        {
            return true;
        }
        else
            return false;
    }
}

但是当我将角色设置为这样的属性时,我不知道如何获取角色

[CustomeAuthorizeAttribute(Roles="admin,super-admin")]

默认情况下它从基础 Authorize class 继承角色 属性 所以你可以得到直接使用角色 属性

角色

例如

if (HttpContext.Current.User.Identity.IsAuthenticated && HttpContext.Current.User.IsInRole(Roles))
    {
        return true;
    }

或者您创建属于自定义授权属性的新属性并使用它们。