【发布时间】:2012-02-02 20:29:04
【问题描述】:
我有一个使用 Membership 进行身份验证/身份验证的 Web 应用程序 (MVC),其中用户可以拥有多个角色和具有不同角色的多个国家/地区。
假设 user1 在美国是管理员和编辑,在墨西哥是唯一的编辑。当用户登录到系统时,系统会提示他同时选择(国家和角色)。
AdminController 具有 [Authorize(Rol = "Admin")] 属性。
在这种情况下,如果用户以编辑者身份登录美国,则必须禁止 AdminContoller 中的操作。
检查用户当前登录的角色的“更好”方法是什么?
【问题讨论】:
-
也许您可以覆盖 Authorize 属性。 [Authorize(Rol = "Admin/Mexico")] 成为管理员和墨西哥。