我正在使用 Windows身份验证创建ASP.NET MVC3 Intranet应用程序。我只希望域用户使用此应用程序。域用户通过身份验证后(使用 Active Directory ),我计划创建用户(使用AD用户名),角色& SQL Server中的UserRoles表用于授权。
因此,如果用户是具有一组权限(访问控制器/操作)的角色的一部分,我应该只允许该角色的用户执行/查看它们。
例如:如果有动作/位置/创建,那么允许执行该操作的角色只能这样做。
有人可以给我一些指示吗?我应该创建自定义操作过滤器,并将filter属性用于我希望过滤器应用于的任何操作方法吗?
答案 0 :(得分:0)
要限制对ASP.NET MVC视图的访问,请限制对该视图的访问 呈现视图的动作方法。为了实现这一点,MVC framework提供了AuthorizeAttribute类。
示例:
[Authorize(Roles = "Admin, Super User")]
public ActionResult AdministratorsOnly()
{
return View();
}
有关详细信息,请参阅here。
请注意,使用[Authorize]属性要求您使用某种成员资格提供程序。