Was ich zuerst anschaue, wenn ich ein neues AD übernehme

April 2, 2026

Jedes AD, das ein paar Jahre auf dem Buckel hat, sieht nach einer Weile so aus, als hätten drei verschiedene Leute es gepflegt – weil drei verschiedene Leute es gepflegt haben. Das ist normal. Die Kunst ist nicht, das zu verhindern. Die Kunst ist, einen schnellen Überblick zu bekommen, wenn man neu dazukommt.

Wenn ich in eine Umgebung reinschaue, die ich nicht kenne, mache ich in der Regel nicht als Erstes einen Haufen an Änderungen. Ich schaue mir an, in welchem Zustand die Dinge sind. Die fünf Abfragen hier sind mein üblicher Einstieg.

Inaktive Accounts

Get-ADUser -Filter {Enabled -eq $true} -Properties LastLogonDate | Where-Object { $_.LastLogonDate -lt (Get-Date).AddDays(-90) } | Select-Object Name, SamAccountName, LastLogonDate

Alle aktiven Accounts, die seit 90 Tagen nicht mehr angemeldet waren. Keine Löschkandidaten, nur Prüfkandidaten. Nicht direkt in den Papierkorb, sondern in eine OU "zu_prüfen" verschieben und 30 Tage warten, ob sich jemand meldet. Die Hälfte löst sich oft von selbst (Elternzeit, langfristig krank), der Rest lässt sich sauber zurückbauen.

User ohne Manager-Feld

Get-ADUser -Filter {Enabled -eq $true} -Properties Manager | Where-Object { -not $_.Manager } | Select-Object Name, SamAccountName

Ein sauberes Manager-Feld ist die Basis für vieles später: automatische Genehmigungen, Offboarding-Workflows, Vertretungsregelungen. Wenn das Feld leer ist, sind diese Prozesse entweder nicht da oder bauen auf Sand. Gleichzeitig ist das Feld auch ein guter Indikator dafür, wie ernst die AD-Pflege in der Vergangenheit genommen wurde.

Leere Gruppen

Get-ADGroup -Filter * -Properties Members | Where-Object { $_.Members.Count -eq 0 } | Select-Object Name

Gruppen ohne Mitglieder sind meistens Überreste. Vergessene Vorlagen, abgeschaltete Projekte, veraltete Berechtigungsstrukturen. Vor dem Löschen trotzdem einen Moment innehalten: Manche sind bewusst als Vorlage angelegt und werden nur periodisch befüllt.

Verwaiste Computer-Objekte

Get-ADComputer -Filter {Enabled -eq $true} -Properties LastLogonDate | Where-Object { $_.LastLogonDate -lt (Get-Date).AddDays(-60) } | Select-Object Name, LastLogonDate

Rechner, die seit zwei Monaten offline sind. In der Praxis sind das zu einem ordentlichen Teil Geräte, die längst im E-Schrott liegen. Das AD weiß davon nichts, weil niemand sie ordentlich aus der Domäne genommen hat.

Wer alles Domain-Admin ist

Get-ADGroupMember "Domain Admins" -Recursive | Select-Object Name, SamAccountName, ObjectClass

Das ist die wichtigste Abfrage auf dieser Liste. Wer steht drin? Sind es dedizierte Admin-Accounts oder tägliche User-Accounts mit erweiterten Rechten? Gibt es Service-Accounts, die da nicht hingehören? Jeder Eintrag, der nicht wirklich dort sein muss, ist ein potentielles Risiko.

Danach: aufschreiben

Der langweiligste, aber wichtigste Teil: Was du änderst, hältst du kurz fest. Datum, Aktion, Grund. Drei Zeilen reichen. Das ist die Doku, die dir selbst in drei Monaten das Leben rettet – und spätestens dem, der nach dir kommt.

Nicht schön, aber nützlich.

LinkedIn