【发布时间】:2013-05-18 09:59:39
【问题描述】:
我在 MVC3 中工作。我创建了 3 个角色:管理员、经理和员工,并让 manager1 和 manager2 担任经理角色。我想给经理添加、编辑、查看、删除权限。我不想给 manager1 删除权限。我可以覆盖用户对角色的权限吗?如果可以,请告诉我如何使用会员等级来做到这一点?有没有关于提供权限的好文章?
【问题讨论】:
标签: asp.net-mvc-3 asp.net-membership
我在 MVC3 中工作。我创建了 3 个角色:管理员、经理和员工,并让 manager1 和 manager2 担任经理角色。我想给经理添加、编辑、查看、删除权限。我不想给 manager1 删除权限。我可以覆盖用户对角色的权限吗?如果可以,请告诉我如何使用会员等级来做到这一点?有没有关于提供权限的好文章?
【问题讨论】:
标签: asp.net-mvc-3 asp.net-membership
Use the deny technique..
public class DenyAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
return !base.AuthorizeCore(httpContext);
}
}
use this like authorizeattribute only.
【讨论】:
首先,会员资格提供者不提供任何特权,他们只存储帐户、个人资料、角色。
访问您可以授予角色和/或用户的一些操作,在控制器和操作上设置 attibute [AuthorizeAttribute(Roles = "role1", Users = "manager2")]。因此,使用这些技术,您可以扩展 manager2 的权限。
【讨论】: