我可以在MVC 5中应用用户创建的角色吗?

时间:2014-04-25 08:31:10

标签: asp.net-mvc asp.net-mvc-5 roles role-base-authorization

我在网上发现了大量的例子,解释了如何使用RoleManager等在MVC 5中创建角色,但我找不到答案,是否可以动态应用角色在用户级别(通过UI)创建到应用程序的某些部分?

我不明白创建新角色的目的只是为了将它们存储在没有其他功能的数据库中?

感谢任何评论。

以下是我的角色创建代码示例:

 public bool CreateRole(string name)
    {
        var rm = new RoleManager<IdentityRole>(
            new RoleStore<IdentityRole>(new ApplicationDbContext()));
        var idResult = rm.Create(new IdentityRole(name));
        return idResult.Succeeded;
    }

1 个答案:

答案 0 :(得分:0)

您是否希望使用不仅仅是角色属性来应用细粒度授权?例如:

  • 用户与目标文档/资源之间的关系?
  • 一天中的时间?

在这种情况下,您需要从RBAC迁移到ABAC(基于属性的访问控制)。

NIST在这个主题上有一个很棒的页面:csrc.nist.gov/projects/abac/