Beitrag

Massenänderung von AD-Passwörtern via Skript

Es erfolgt mit diesen Skript ein Passwortwechsel und die Aktivierung von PMC.

$user.SamAccountName und SamAccountName in der CSV-Datei, muss für die eigene Umgebung angepasst werden.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# CSV-Datei mit UserPrincipalName (oder SamAccountName)
$users = Import-Csv -Path "C:\Users\foo\Desktop\user.csv"

# Beispiel: festes Passwort für alle Nutzer (kannst du anpassen)
$neuesPasswort = "passWoRd!5678"

foreach ($user in $users) {
    try {
        # Nutzerobjekt aus Active Directory abrufen
        $adUser = Get-ADUser -Identity $user.SamAccountName -ErrorAction Stop
        
        # Neues Passwort setzen (Set-ADAccountPassword)
        Set-ADAccountPassword -Identity $adUser -Reset -NewPassword (ConvertTo-SecureString $neuesPasswort -AsPlainText -Force)
        
        # PMC (Password Must Change) aktivieren
        Set-ADUser -Identity $adUser -ChangePasswordAtLogon $true

        Write-Host "Kennwort für $($user.SamAccountName) erfolgreich gesetzt und PMC aktiviert." -ForegroundColor Green
    }
    catch {
        Write-Warning "Fehler bei $($user.SamAccountName): $_"
    }
}

Inhalt der CSV-Datei:

1
2
3
4
5
SamAccountName
user1
user2
foo
bar