【发布时间】:2016-04-26 20:52:46
【问题描述】:
也许我在 ASP.NET Identity (2.2.1) 的“文档”中的某个地方忽略了这一点,但我很难理解创建控制器和管理角色的接口的意义。我理解管理用户(CRUD + 分配角色)的意义,但就角色而言,CRUD 对我来说没有意义,除非有一种方法可以在运行时动态检测控制器的访问(IsInRole)。我有两个问题:
1] 当您必须首先在代码中配置应用程序以设置Authorize 属性以设置应具有的角色时,是否需要投入资源和时间来为角色创建 CRUD访问权限?
和
2] 有没有办法捕捉用户从控制器甚至控制器实例请求操作的时刻,以便在该点从数据库检查权限?
【问题讨论】:
-
您可以在类(控制器)级别甚至方法级别(操作)上使用授权属性,因此用户可以请求控制器,但不能请求所有操作
-
正确。这就是我所面临的难题。既然必须对角色进行硬编码,为什么还要开发一种方法来管理角色?
标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-identity