我有两组用户,一组人正在招聘,另一组人正在招聘。
我想限制每组用户对某些页面的访问,但是当我在控制器中使用Authorize时,它允许访问任何登录的用户,而不区分他们来自哪个组?
[HttpPost]
public ActionResult Signin(string username, string password)
{
var mgr = new Cleaners.Models.UserManager(@"Data Source=.\sqlexpress;Initial Catalog='Cleaning Lady';Integrated Security=True");
var user = mgr.GetUser(username, password);
if (user == null)
{
return View(new UserViewModel { Name = username });
}
FormsAuthentication.SetAuthCookie(user.UserName, true);
UserViewModel.IsAuthenticated = User.Identity.IsAuthenticated;
return RedirectToAction("Private");
}
[Authorize]
public ActionResult Private()
{
return View();
}有没有办法限制通过这个控制器验证的用户对“私有”的访问?
发布于 2016-08-19 00:23:54
我给出一个简单的例子:
[Authorize(Roles="Contractor")]
public ActionResult Private()
{
return View();
}这将检查当前用户/身份是否具有名为Contractor的角色。
我建议你阅读this article来理解它的基础知识。
https://stackoverflow.com/questions/39022454
复制相似问题