Ich habe ein asp.net5-Projekt eingerichtet, um Windows-Authentifizierung zu verwenden. Wenn ich einen Unterbrechungspunkt einstelle und den Benutzer ansehe, sehe ich, dass es ein Claims-Array gibt, das Gruppen-SIDs enthält. Wie bekomme ich den tatsächlichen Gruppennamen von den Ansprüchen?
Ich versuche, die angemeldeten Windows-Benutzer mit den Active Directory-Gruppen, denen sie angehören, zu begrenzen und habe Schwierigkeiten, sie einzurichten.
Fragen: Wie kann ich die Active Directory-Gruppen sehen, zu denen der angemeldete Benutzer gehört? Wie konvertiere ich die GroupSIDs in einen Gruppennamen? Muss ich etwas in die startup.cs aufnehmen, um bestimmte Gruppen auf REST-Serviceaufrufe zu beschränken?
Ich sehe Beispiele für das manuelle Einrichten von Ansprüchen basierend auf dem angemeldeten Benutzer. Ich bin daran interessiert, den authentifizierten Windows-Benutzer und ihre Gruppen zu verwenden, um den Zugriff zu beschränken.
Danke
Sie nicht. Leider funktioniert die Windows-Authentifizierung nicht so. Sie können nur prüfen, ob ein Benutzer eine Rolle innehat (und dafür eine Policy-Anforderung), nicht die Rollen, in denen sie sich befinden - die Verzeichnisdienste werden nicht in den Core portiert.
(Eine Sache zu beachten ist, dass, err, User.IsInRole () ist jetzt für Windows-Identitäten gebrochen. Das wird in RC2 behoben werden)
Sie können den Gruppennamen tatsächlich noch folgendermaßen verwenden:
%Vor%Also zum Beispiel:
%Vor%Ausgaben:
%Vor%Beachten Sie, dass das Auffüllen der Domänenrollen eine oder zwei Sekunden dauern kann.
Tags und Links asp.net-core asp.net-core-mvc