Он работает почти так же, как и в ASP.NET WebForms, но вы контролируете доступ к различным частям вашего сайта, украшая действия или контроллеры атрибутами.
Пример:
public class HomeController
{
// Does not require any authentication
public ActionResult Index(int id)
{
return View();
}
// Requires login, and that the logged in user is in the "Users"-Role
[Authorize(Roles="Users")]
public ActionResult SemiSecret(int id)
{
return View();
}
// Same as above, but requires user to be in "Admin" Role
[Authorize(Roles="Admin")]
public ActionResult TopSecret(int id)
{
return View();
}
}
на контроллере:
// All actions in this controller requires users to log in and be in "Admin" role
[Authorize(Roles="Admin")]
public class AdminController
{
// Controller code goes here ...
}
Вы также можете ограничить это на уровне пользователя, используя [Authorize(Users="UserName")]
Надеюсь, это поможет!