Inaktive AD-User ermitteln

In diesem Artikel:

Kategorie: Tags: Powershell: , , , ,

Um alle Benutzer in einem Windows Active Directory zu ermitteln, die sich seit 90 Tagen nicht angemeldet haben, können Sie ein PowerShell-Skript verwenden. Dabei nutzen Sie das Cmdlet Search-ADAccount. Stellen Sie sicher, dass das Active Directory-Modul für PowerShell auf Ihrem System installiert und geladen ist, bevor Sie dieses Skript ausführen.

Hier ist ein Beispiel für ein PowerShell-Skript, das diese Aufgabe erfüllt:

# Importieren des Active Directory-Moduls
Import-Module ActiveDirectory

# Berechnen des Datums, das 90 Tage zurückliegt
$Datum90TageZurück = (Get-Date).AddDays(-90)

# Suchen nach Benutzern, die sich seit über 90 Tagen nicht angemeldet haben
$Benutzer = Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 -UsersOnly

# Filtern der Benutzer, um nur diejenigen anzuzeigen, die sich seit 90 Tagen nicht angemeldet haben
$Benutzer | Where-Object { $_.LastLogonDate -lt $Datum90TageZurück } | 
    Select-Object Name, SamAccountName, LastLogonDate

# Ausgabe der Benutzerinformationen
$Benutzer

Dieses Skript führt folgende Schritte aus:

  1. Importiert das Active Directory-Modul für PowerShell.
  2. Berechnet das Datum, das 90 Tage vor dem aktuellen Datum liegt.
  3. Verwendet Search-ADAccount, um nach Benutzerkonten zu suchen, die innerhalb der letzten 90 Tage inaktiv waren.
  4. Filtert diese Benutzer weiter, um nur diejenigen anzuzeigen, deren letzte Anmeldung vor mehr als 90 Tagen lag.
  5. Zeigt eine Liste dieser Benutzer an, inklusive ihres Namens, Benutzerkontonamens und des Datums ihrer letzten Anmeldung.

Beachten Sie, dass der LastLogonDate-Wert nicht immer zu 100% genau ist, da er von der Replikationslatenz zwischen den Domain Controllern abhängt. Für die meisten administrativen Zwecke ist er jedoch ausreichend genau.