Ich habe einen Controller mit einem AuthorizeAttribute dekoriert. Der Controller enthält mehrere Aktionen, die alle Authentifizierung erfordern, abgesehen von einer Aktion, die eine benutzerdefinierte Authentifizierung erfordert, die von CustomAuthorizeAttribute bereitgestellt wird.Controller überschreiben AuthorizeAttribute für nur eine Aktion
Meine Frage ist, sobald ich [Autorisieren] auf der Controller-Ebene hinzugefügt habe, kann ich es überschreiben (oder entfernen) mit [CustomAuthorize] auf nur eine Aktion? Oder muss ich [Authorize] von der Controller-Ebene entfernen und sie jeder anderen Aktion einzeln hinzufügen?
Ich frage rein aus Bequemlichkeit, weil ich faul bin und nicht jede Aktion mit dem AuthorizeAttribute dekorieren will.
[Authorize]
public class MyController : Controller {
//requires authentication
public ViewResult Admin() {
return View();
}
//... a lot more actions requiring authentication
//requires custom authentication
[CustomAuthorize] //never invoked as already failed at controller level
public ViewResult Home() {
return View();
}
}
In diesem Fall wird die CustomAuthorizeAttribute das gleiche Maß an Zugang bietet aber wird verwendet, um einen Fehler in Flash zu kompensieren und so den Auftrag einstellen Eigenschaften sind genug, um das gewünschte Ergebnis zu erzielen. Vielen Dank. –
Durch die Reihenfolge des Attributs in der Aktion konnte ich das Attribut auf dem Controller überschreiben. Upvote! –