У меня есть следующий код для авторизации, я хочу добавить роль авторизации, скажем, 3 типа пользователей.В базе данных у меня есть пользователь (идентификатор, имя пользователя, пароль, UserRole).Я просмотрел много учебных пособий, но ничего, что я нашел полезным для решения этой проблемы.
public class LoginController : Controller
{
// GET: Login
[HttpGet]
public ActionResult Login()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
[OutputCache(NoStore = true, Duration = 0, VaryByParam = "None")]
public ActionResult Login(LoginModel model)
{
if (ModelState.IsValid)
{
User user = model.login(model.UserName,model.Password);
if (user != null)
{
FormsAuthentication.SetAuthCookie(model.UserName, true);
this.Session["user"] = user;
return RedirectToAction("Index", "Home");
}
else
{
ModelState.AddModelError("", "Niste uneli ispravne podatke!");
}
}
return View("Login", model);
}
[Authorize]
public ActionResult Logout()
{
FormsAuthentication.SignOut();
this.Session["user"] = null;
this.Session.Abandon();
return RedirectToAction("Index", "Home");
}
}
Теперь у меня есть [Авторизация] на каждом контроллере, я хочу иметь возможность [Authorize (Roles = "temp"))], [Authorize (Roles = "admin")] и т. Д.