设置用户权限

Setting Up User Permissions

根据用户名设置页面权限的最佳方法是什么?这是我的困境:
我需要设置用户安全并希望从一开始就这样做(我为什么这么问)。

我将有以下组之一的用户(并且可以更改这些名称):

并将根据用户名所属的组授予对特定页面的访问权限。
但是,我会有一些一次性的,比如 privelageduser 的成员需要访问 fulladmin 页面之一,但只有那一页,而不是 [=11= 的完整页面] 得到。
因此,例如,假设一个完全管理员有权访问第 1、2、3、4、5、6、7、8、9、10、11、12、13、14、15 页,并且 privelageduser 具有第 1、2、3、4、5、6 页的权限 但是 privelageduser 组中的这个特定用户名需要访问第 1、2、3、4 页, 5, 6, 11.

并且由于 1-offs,我不能只授予 "securitylevel" 标记 "FA"、"PU"、"EM"、"TE", "CO".

如果您使用的是 MVC,则可以尝试使用 Authorize attribute。这允许您通过用户名和/或角色授权:

[Authorize(Users = "Tom, Chris")]
 public ActionResult SpecificUserOnly()
 {
     return View();
 }


[Authorize(Roles = "Admin, SuperAdmin")]
public ActionResult AdministratorsOnly()
{
    return View();
}

如果您有非常特殊的需求,您甚至可以 create a customized authorize attribute

ASP.Net 有 Membership Provider Doc 你可以使用。

另一种选择可能更头重脚轻,您可以尝试使用数据库表创建角色、组和用户。创建这些后,您可以利用应用程序的业务层为上述内容实现自定义逻辑。