Mitgliedschaften in AD-Gruppen ohne Neustart oder Abmelden aktualisieren

    Kerberos-TicketsFügt man Computer oder Benutzer zu einer Sicherheits­gruppe im Active Directory hinzu, dann wirkt sich dies nicht sofort aus. Damit verbun­dene Berech­tigungen greifen erst nach dem erneuten An­melden eines Users oder dem Reboot des Com­puters. Dies lässt sich durch Erneuern der Kerberos-Tickets ver­meiden.

    Wenn man einen Server zum Mitglied einer AD-Gruppe macht, um ihn zum Beispiel in die Sicherheits­filterung eines GPO aufzunehmen oder ihm die Berechtigung zum Anfordern eines Zertifikats zu erteilen, dann ist es oft nicht möglich, ihn danach gleich neu zu starten. Dies ist aber normaler­weise notwendig, um die Mitglied­schaften in AD-Gruppen zu aktualisieren.

    Man kann den Reboot umgehen, indem man das Kerberos-Ticket für den Computer mit klist.exe erneuert. Wenn man auf einer Eingabea­ufforderung den Befehl

    klist.exe sessions | findstr /i %COMPUTERNAME%

    eingibt, dann erkennt man, dass der so genannte Low Part der LogonID für den lokalen Rechner immer den Wert 0x3e7 hat, während 0x3e4 zum Netzwerk-Service gehört. Die dazu gehörigen zwischen­gespeicherten Kerberos-Tickets kann man sich mit

    klist.exe -li 0x3e7

    anzeigen lassen.

    Der Low Part der LogonID des lokalen Rechner weist konstant den Wert 0x3e7 auf.

    Diese entfernt man mit Hilfe des Parameters purge, nachdem man das Computer-Konto einer neuen Sicherheits­gruppe im AD hinzufügt hat:

    klist.exe -li 0x3e7 purge

    Der Aufruf von 'klist.exe -li 0x3e7 purge' löscht die Tickets für das Computer-Konto

    Anschließend erhält man durch den Aufruf von

    gpupdate /force

    neue Tickets. Führt man

    klist.exe -li 0x3e7

    erneut aus und vergleicht den Output mit dem früheren Aufruf dieses Kommandos, dann erkennt man, dass sich die Zeitstempel der Kerberos-Tickets geändert hat.

    Mit

    gpresult /r /scope computer

    kann man sich die Gruppen anzeigen lassen, in denen der lokale Computer Mitglied ist. Dieser Befehl spiegelt die Änderung nach dem Erneuern der Tickets in der Regel aber nicht wider, egal ob das Konto einer Gruppe hinzugefügt oder aus einer entfernt worden ist.

    Nutzt man jedoch eine AD-Gruppe für die Sicherheits­filterung von GPOs, dann zeigt die Änderung hier unmittelbar Wirkung und ist auch in der Ausgabe von gpresult zu erkennen. Ähnliches gilt für die Berechtigungen auf andere Ressourcen.

    Server2022Preview wurde in die Gruppe HR aufgenommen, die nicht für das GPO WinRM berechtigt ist. gpresult zeigt 'HR' nicht an, aber die Filterung.

    Mitgliedschaften für User aktualisieren

    Während Server oft nicht einfach neu gestartet werden können, bloß um die Mitgliedschaft in AD-Gruppen zu aktualisieren, ist es in der Regel für Benutzer kein größeres Problem, sich neu anzumelden, um durch geänderte Gruppen­mitglied­schaften Zugriff auf bestimmte Ressourcen zu erhalten.

    Falls aber ein Logoff vermieden werden soll, hilft klist.exe auch hier weiter. In diesem Fall ruft man, nachdem das Benutzerkonto in eine neue Gruppe aufgenommen wurde, in einer Eingabe­auf­forderung ohne erhöhte Rechte

    klist purge

    auf. Das Programm gibt dabei die LogonID des aktuellen Users aus und bestätigt, dass die Kerberos-Tickets für diesen gelöscht wurden. Um neue zu erhalten, kann man eine weitere Instanz von cmd.exe über runas starten.

    Nach klist purge zeigt eine neue Instanz von cmd.exe die Mitgliedschaft des Users in der Gruppe 'HR' an.

    Führt man dort

    whoami /groups

    aus, dann sollte sich die Änderung in den Gruppen­mitglied­schaften bereits bemerkbar machen. Entsprechend sollte der Benutzer auch in der Lage sein, zum Beispiel über den FQDN des Servers auf eine Netz­freigabe zuzugreifen, die ihm vor dem Hinzufügen zur neuen AD-Gruppe verwehrt war.

    Es liegt auf der Hand, dass die beschriebene Lösung nur für Dienste funktioniert, die Kerberos unterstützen. Bei einer NTLM-Authentifizierung führt am Reboot oder Ausloggen kein Weg vorbei.

    Täglich Know-how für IT-Pros mit unserem Newsletter

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Keine Kommentare