设置用户权限

时间:2015-05-20 12:18:16

标签: c# asp.net security webforms user-permissions

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

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

  • fulladmin
  • privelageduser
  • 员工
  • temp
  • 合同

并将根据用户名所属的组授予对特定网页的访问权限 但是,如果privelageduser成员需要访问其中一个fulladmin页,但只有1页,而不是{{1}页的完整页面,我会有一些一次性}得到。
例如,假设一个完整的管理员拥有第1,2,3,4,5,6,7,8,9,10,11,12,13,14,15页和fulladmin的权限。页面1,2,3,4,5,6的权限 BUT privelageduser组中的这个特定用户名需要访问第1,2,3,4,5页, 6,11。

由于1次关闭,我不能仅仅授予“安全级别”标志“FA”,“PU”,“EM”,“TE”,“CO”。

2 个答案:

答案 0 :(得分:1)

如果您正在使用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

答案 1 :(得分:0)

ASP.Net拥有您可以使用的Membership Provider Doc

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