Appliquer AuthorizeAttribute à une classe de contrôleur et à l'action simultanément
Est-Il une façon de faire un [Autoriser] attribut est ignoré dans une action d'un contrôleur de classe qui a un Autoriser attribut?
[Authorize]
public class MyController : Controller
{
[Authorize(Users="?")]//I tried to do that and with "*", but unsuccessfuly,
public ActionResult PublicMethod()
{
//some code
}
public ActionResult PrivateMethod()
{
//some code
}
}
Juste le PrivateMethod() doit avoir authentification requise, mais il a été nécessaire de trop.
PS: je ne voudrais pas faire mon personnalisée autoriser filtre.
[]
source d'informationauteur Adriano Zawadzki
Vous devez vous connecter pour publier un commentaire.
Par défaut, il est impossible - si vous réglez [Autoriser] pour le contrôleur, puis seulement authentifié utilisateur peut accéder à l'action.
ou
Vous pouvez essayer personnalisé décisions: stackoverflow.
Vous pouvez utiliser [AllowAnonymous]
Une solution est dans cet article: La sécurisation de votre ASP.NET MVC 3
L'article parle d'une liste blanche de l'approche où vous décorer actions avec un AllowAnonymous attribut personnalisé. Il vous faut donc étendre
AuthorizeAttribute
et laOnAuthorization
méthode d'ignorer les contrôles d'autorisation de AllowAnonymous -actions. (L'approche est crédité de Lévi, un spécialiste de la sécurité sur le MVC de l'équipe.)