Die Verwaltung von Active Directory-Benutzerinformationen kann anfangs etwas kompliziert wirken, insbesondere wenn man herausfinden möchte, wer ein Konto erstellt hat oder wann. Es ist nicht ungewöhnlich, Benutzererstellungen zu überprüfen, kürzlich erstellte Konten zu finden oder einfach zu bestätigen, ob jemand Änderungen an den Kontoeinstellungen vorgenommen hat. Glücklicherweise gibt es einige Tricks mit PowerShell und der AD-Konsole, die dies deutlich vereinfachen – vorausgesetzt, man weiß, wo man suchen muss. Egal, ob Sie einen mysteriösen neuen Benutzer aufspüren oder sich einen Überblick über AD-Details verschaffen möchten, dieser Artikel sollte Ihnen weiterhelfen.
Wie man herausfindet, wann ein Benutzerkonto erstellt wurde und wer es erstellt hat
Ermittlung des Erstellungsdatums mit ADUC (grafische Methode)
Der einfachste Weg – falls Sie kein PowerShell-Experte sind – führt über Active Directory-Benutzer und -Computer ( dsa.msc).Stellen Sie sicher, dass die erweiterten Funktionen im Menü „Ansicht“ aktiviert sind, da sonst einige Informationen ausgeblendet werden. Suchen Sie den Benutzer in der Liste, öffnen Sie dessen Eigenschaften und wechseln Sie dann zur Registerkarte „Objekt“. Das Erstellungsdatum zeigt genau an, wann das Konto angelegt wurde. Ganz einfach. Aber glauben Sie mir, das ist nur die Spitze des Eisbergs.
Sie können das whenCreatedAttribut auch direkt im Attribut-Editor einsehen – dieser befindet sich im selben Eigenschaftenfenster. Aktivieren Sie dazu einfach den Tab „Attribut-Editor“ in den Ansichtsoptionen. Er ist etwas versteckt, aber sobald Sie ihn gefunden haben, ist er selbsterklärend. Bei manchen Konfigurationen können diese Informationen unzuverlässig sein, insbesondere wenn jemand die Regeln umgangen oder Skripte verwendet hat, um Zeitstempel zu verändern – behalten Sie dies also im Hinterkopf.
PowerShell für Erstellungsdatum und mehr verwenden
Für Technikbegeisterte oder diejenigen, die Skripte bevorzugen, Get-ADUserist das PowerShell-Cmdlet ein Lebensretter. Möchten Sie das Erstellungsdatum abrufen? Hier ist eine einfache Einzeiler-Lösung:
Get-ADUser a.brion -Properties whenCreated | Select-Object Name, whenCreated
Das liefert Ihnen den Benutzernamen und das ursprüngliche Erstellungsdatum des Kontos.Warum ist das hilfreich? Es beschleunigt die Suche nach vielen Benutzern oder regelmäßige Überprüfungen erheblich. Wann verwendet man diese Funktion? In der Regel, wenn Sie vermuten, dass ein neues Konto ohne Ihr Wissen erstellt wurde. Sie sehen einen Zeitstempel, der genau angibt, wann das Konto erstellt wurde. In manchen Fällen kann das Datum aufgrund von Manipulationen an den Zeitstempeln falsch sein, aber meistens ist es recht zuverlässig.
Ein weiterer praktischer Trick: Um alle Konten zu finden, die in den letzten 24 Stunden erstellt wurden, können Sie ein Skript wie dieses ausführen:
$lastday = ((Get-Date).AddDays(-1)) $filename = Get-Date -Format yyyy. MM.dd $exportcsv = "C:\ps\new_ad_users_" + $filename + ".csv" Get-ADUser -Filter {(whenCreated -ge $lastday)} -Properties whenCreated | Select-Object Name, UserPrincipalName, SamAccountName, whenCreated | Export-Csv -Path $exportcsv -NoTypeInformation
Dieses Skript sammelt die neuesten Benutzerkonten – nützlich, wenn Sie täglich neue Benutzerkonfigurationen überwachen möchten. Planen Sie es einfach in der Windows-Aufgabenplanung ein, und schon erhalten Sie tägliche Berichte.
Nachverfolgen, wer ein Konto erstellt hat: Geheimnisse des Ereignisprotokolls
Jetzt wird es etwas knifflig. Um herauszufinden, *wer* einen bestimmten Benutzer erstellt hat, muss man die Sicherheitsprotokolle untersuchen. Wird ein Benutzer in Active Directory erstellt, erscheint ein Ereignis mit der ID 4720 in den Protokollen des Domänencontrollers. Aber – und hier liegt der Haken – nur, wenn die Überwachung in den Gruppenrichtlinien für die Benutzerkontenverwaltung aktiviert ist.
Auf den meisten Domänencontrollern muss die Option „Benutzerkontenverwaltung überwachen“ in der Standarddomänencontrollerrichtlinie aktiviert sein. Ist sie deaktiviert, werden diese Ereignisse nicht angezeigt. Sobald sie aktiviert ist, löst jede Benutzererstellung ein Ereignis aus, dessen Beschreibung „Ein Benutzerkonto wurde erstellt“ lautet.
Um herauszufinden, wer die Erstellung vorgenommen hat, sehen Sie im Feld „Betreff “ nach. Dort wird das Konto angezeigt, das die Erstellung durchgeführt hat, sowie der Benutzername des neuen Kontos im Feld „Neues Konto“.Um diese Informationen schnell von mehreren Domänencontrollern zu erhalten, können Sie ein Skript verwenden, das alle relevanten Ereignisse der letzten 24 Stunden durchsucht.
$Report = @() $time = (Get-Date) - (New-TimeSpan -Hours 24) $AllDCs = Get-ADDomainController -Filter * foreach($DC in $AllDCs) { Get-WinEvent -ComputerName $DC. Name -FilterHashtable @{LogName="Security"; Id=4720; StartTime=$time} | Foreach { $xml = [xml]$_. ToXml() if($xml) { $timestamp = Get-Date $_. TimeCreated -UFormat "%Y-%m-%d %H:%M:%S" $creator = $xml. Event. EventData. Data | Where-Object { $_. Name -eq "SubjectUserName" } | Select-Object -ExpandProperty '#text' $newUser = $xml. Event. EventData. Data | Where-Object { $_. Name -eq "TargetUserName" } | Select-Object -ExpandProperty '#text' $Report += [pscustomobject]@{ User = $newUser Creator = $creator DC = $DC. Name CreationDate = $timestamp } } } } $Report | Export-Csv "C:\ps\ad_user_creation_report_$(Get-Date -Format yyyy. MM.dd).csv" -NoTypeInformation
Ja, es sieht etwas komplex aus, aber es funktioniert – insbesondere bei der Überwachung mehrerer Domänencontroller. Beachten Sie jedoch, dass das Skript je nach Ihren Protokollierungsrichtlinien möglicherweise angepasst werden muss.
Und falls das nicht geholfen hat, hier ein Tipp: Stellen Sie sicher, dass die Protokollierung aktiviert ist, die Protokolle fehlerfrei sind und Sie die entsprechenden Zugriffsrechte besitzen. Andernfalls bleiben diese Informationen unzugänglich.
Zusammenfassung
Mit etwas Know-how lässt sich herausfinden, wer einen Benutzer erstellt hat und wann. PowerShell und die AD-Konsolentools sind dabei sehr hilfreich. Wichtig ist, dass Ihre AD-Überwachungsrichtlinien von Anfang an korrekt eingerichtet sind, sonst tappen Sie im Dunkeln. Mit den oben genannten Skripten können Sie den Großteil der Routinearbeit automatisieren und neue Benutzerkonten relativ einfach im Blick behalten. Hoffentlich trägt dies zur Optimierung einiger Überwachungsabläufe bei.
Zusammenfassung
- Nutzen Sie ADUC mit erweiterten Funktionen, um schnell zu sehen, wann ein Benutzer erstellt wurde.
- Führen Sie den Befehl
Get-ADUserin PowerShell aus, um detaillierte Informationen und Automatisierungsmöglichkeiten zu erhalten. - Überprüfen Sie die Sicherheitsprotokolle des Domänencontrollers (Ereignis-ID 4720), um herauszufinden, wer ein Benutzerkonto erstellt hat.
- Stellen Sie sicher, dass Überwachungsrichtlinien aktiviert sind, um Ereignisse der Benutzerkontenverwaltung zu verfolgen.
- Automatisieren Sie tägliche oder wöchentliche Prüfungen mit Skripten und dem Aufgabenplaner.
Schlussgedanken
Ehrlich gesagt, kann man mit diesen Tricks enorm viel Zeit sparen, egal ob man herumexperimentiert oder einfach nur Ordnung halten will. Am besten ist es, die Prüfung von Anfang an richtig einzurichten, aber auch nachträgliche Kontrollen sind möglich. Hoffentlich spart das jemandem ein paar Stunden.