用户表Users.IsAdmin中的Asp.net身份角色

时间:2014-09-02 05:52:38

标签: c# asp.net asp.net-identity

我在我的项目中使用ASP.NET Idenetity。

我的用户表包含一列“IsAdmin”,用于标识用户是否为管理员。

在下面的代码中

    [Authorize(Roles = "Admin")]
    public ActionResult Index()
    {
    } 

我想从表Users.IsAdmin = true授权用户作为管理员。不是来自UserRoles表。

请建议怎么做?

1 个答案:

答案 0 :(得分:1)

我看到3个选项:

  1. 为ASP.net身份实现IUserRoleStore - 它允许您覆盖IsInRole方法

  2. 验证时是否IsAdmin = true检查并向此用户添加管理员角色(因此您可以使用默认的授权属性)。

  3. 编写一个包含所有必需授权逻辑的自定义Authorization属性。