Personalizando a autorização no ASP.NET MVC
A classe My Controller é decorada com um AuthorizeAttribute para proteger as ações:
[Authorize(Roles = "User Level 2")]
public class BuyController : Controller
{
...
}
Sempre que uma ação é chamada, mas o usuário não possui pelo menos a função "Nível 2 do usuário", ele é automaticamente redirecionado para a página de login com um URL como este:
http: // localhost: 1436 / Conta / Login? ReturnUrl =% 2fComprar
Se o usuário já está logado, mas não possui o nível de segurança correto, esse não é um comportamento ideal! Seria mais sensato exibir uma página que informa o usuário sobre o nível que falta, em vez de mostrar a página de login.
O que posso fazer para personalizar esse comportamento? É possível passar o nível de usuário necessário para a ação Login de alguma forma?