动态填充授权属性

时间:2013-11-04 14:48:16

标签: asp.net-mvc-4

我正在使用没有角色设置的Windows身份验证,我只是将一些管理员名称存储在一个表中,我想与authorize属性一起检查。我没有太多使用它的经验,但我看到的唯一例子是硬编码值,如下所示,所以我不确定这个功能是否可用,或者我是否需要添加它。

[Authorize(Users = @"domain\user1, domain\user2")]

任何建议都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

我最后自己添加了这个,很容易做到。

public class AuthorizeUser : AuthorizeAttribute
{
    protected override bool AuthorizeCore(HttpContextBase httpContext)
    {
        string[] admins = 
        //get user names

        if (admins.Contains(httpContext.User.Identity.Name))
            return true;

        return false;
    }
}

然后只使用

[AuthorizeUser]