Script: Benutzer mit lokalen Admin Rechten gegen Gruppen ersetzen

Häufig werden Benutzer zur lokalen Gruppe “Administratoren” auf Servern oder PCs hinzugefügt, damit Benutzer Admin Rechte auf entsprechenden Rechnern erhalten. Zwar ist dies die einfachste Möglichkeit um einem Benutzerkonto Admin Rechte zu konfigurieren, aber leider verliert man hier schnell die Übersicht.

Hier mal ein Beispiel der Mitglieder der lokalen Administrator Gruppe eines Servers:

Script: Benutzer mit lokalen Admin Rechten gegen Gruppen ersetzen

Die Benutzer Admin01 und Admin02 haben hier also Admin Rechte. Die Nachteile dieser Methode liegen auf der Hand:

  • Kommt ein weiterer Benutzer hinzu, muss dieser auf allen Servern eingetragen werden, wo entsprechende Rechte benötigt werden
  • Kommt ein weiterer Server hinzu, müssen alle Benutzer entsprechend eingetragen werden
  • Verlässt ein Benutzer das Unternehmen (Beispiel Admin01) und wird das Konto gelöscht, verbleiben Leichen in den lokalen Admin Gruppen
  • Es ist kaum noch nachvollziehbar, auf welchen Servern welcher Benutzer Admin Rechte hat

Hier mal ein Beispiel einer dieser Leichen:

Script: Benutzer mit lokalen Admin Rechten gegen Gruppen ersetzen

Es ist daher meist einfacher mit Gruppen zu arbeiten. Für jeden Server kann eine AD-Gruppe erstellt werden, welche dann zur lokalen Gruppe “Administratoren” hinzugefügt wird. So lässt sich über die Mitgliedschaften im AD herausfinden, welcher Benutzer auf welchen Servern entsprechende Admin Rechte hat. Auch lassen sich diese Serveradmin Gruppen wieder zu Rollen zusammenfassen. Gibt es beispielsweise 3 FileServer, lassen sich die Serveradmin Gruppen (Beispielsweise FS1_Admins, FS2_Admins, FS3Admins) über eine weitere Gruppe “FileServer_Admins” zusammenfassen. Ein neuer Benutzer muss dann nur noch in die Gruppe “FileServer_Admins” aufgenommen werden, um entsprechende Berechtigungen auf allen 3 FileServern zu erhalten.

In kleineren Umgebungen lässt sich diese Vorgehensweise meist noch ganz gut umsetzen, allerdings fängt man ja recht selten auf der grünen Wiese an. Wenn man also entsprechende Admin Gruppen pro Server nutzen will, muss man irgendwann die bestehenden Mitgliedschaften der lokalen Administrator Gruppe anfassen und in Gruppenmitgliedschaften überführen.

Damit dies nicht alles manuell durchgeführt werden muss, habe ich ein kleines PowerShell Script erstellt. Das Script durchläuft alle Computerkonten einer OU und erstellt entsprechende Admin Gruppen je Computerkonto. In den neu erstellen Gruppen, landen dann alle lokalen Admin Benutzer. Die neue Gruppe wird dann nur lokalen Gruppe Administratoren hinzugefügt und die Benutzer aus der lokalen Gruppe entfernt. Dies spart schon mal einiges an Arbeit.

Damit man sich die Funktionsweise des Scripts besser vorstellen kann, hab ich dazu ein kleines Video aufgezeichnet:

Wie in dem Video zu sehen ist, müssen in dem Script 3 Zeilen angepasst werden. Die Variable “ServerOU” gibt an, welche OU nach Computerkonten durchsucht werden soll. Das Script durchläuft dann alle Computerkonten in dieser OU. “SMBDomainName” ist der NetBIOS Name des Active Directorys. “GroupOU” gibt an, in welcher OU die neuen Gruppen gespeichert werden sollen. Damit das Script funktioniert, muss der Zugriff via WMI auf die Computer möglich sein.

Hier kann das Script runtergeladen werden:

4 Kommentare zu “Script: Benutzer mit lokalen Admin Rechten gegen Gruppen ersetzen”

  1. Stichwort Admin-Tiers:
    Mit welchem Nutzer werden die Eigenschaften der lokalen Admingruppe/WMI geöffnet um die neue Gruppe einzufügen bzw. mit welchem Nutzer wird das Powershell-Skript ausgeführt? Zugang per LAPS oder Domänen-Admin?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.