Kann eine Autorisierung gegen zwei oder mehr Richtlinien angewendet werden? Ich benutze ASP.NET 5, rc1.ASP.NET 5 Autorisieren gegen zwei oder mehr Richtlinien
[Authorize(Policy = "Limited,Full")]
public class FooBarController : Controller
{
// This code doesn't work
}
Wenn nicht, wie kann ich dies erreichen, ohne Richtlinien zu verwenden? Es gibt zwei Benutzergruppen, die auf diesen Controller zugreifen können: "Voll" und "Eingeschränkt". Benutzer können entweder zu "Voll" oder "Eingeschränkt" gehören oder beides. Sie müssen nur zu einer der beiden Gruppen gehören, um auf diesen Controller zugreifen zu können.
Wenn Richtlinien kumulativ sind, warum werden die Standardwerte ersetzt, wenn benutzerdefinierte Richtlinien verwendet werden? Das Herz dieser Frage kommt von [dieser Frage] (https://stackoverflow.com/questions/44187969/why-are-unauthenticated-requests-allowed-in-custom-policies). Ich erkläre benutzerdefinierte Richtlinien und möchte nicht, dass nicht authentifizierte Anfragen in meine Autorisierungshandler gelangen. Der aktuelle Weg, den ich benutze, ist von Schritt 2 in Ihrem Autorisierungs-Workshop (Autorisierung aller Endpunkte und Setzen von '[AllowAnonymous]' wo nötig). Fühlt sich an wie ein Antipattern, aber ich könnte dumm sein! – steamrolla
Grundsätzlich gehen wir davon aus, dass Sie wissen, was Sie tun, wenn Sie Ihre eigenen Richtlinien festlegen. Durch das Anwenden einer Richtlinie wird angezeigt, dass Sie den Standardwert überschreiben. – blowdart
Verstanden. Es fühlt sich an, als würde die Standardrichtlinie eine "Baseline" sein, als wäre es Ihre erste Richtlinie in einer Sammlung von benutzerdefinierten Richtlinien. – steamrolla