kabuntel
Goto Top

Active Directory: Trotz Skript kann Benutzer nicht PW ändern

Hallo,

ich würde gerne wissen, warum ,trotz eines Skripts, dass den Haken im AD "Benutzer kann Kennwort nicht ändern", sein Passwort nicht ändern kann.

Das ist das Script:

if ($user) {
# Überprüfen, ob der Haken bereits entfernt ist
if ($user.UserCannotChangePassword) {
# Haken entfernen
Set-ADUser -Identity $user.SamAccountName -CannotChangePassword $false
Write-Host "Haken für Benutzer $($user.SamAccountName) entfernt."  
} else {
Write-Host "Haken für Benutzer $($user.SamAccountName) ist bereits entfernt."  
}
} else {
Write-Host "Benutzer $($username) nicht gefunden."  
}

Ich habe mir auch die Default Passowr dPolicy angeschaut, aber dort habe ich keine Eigenschaft gefunden, die den Haken setzt.

Content-ID: 33539108041

Url: https://administrator.de/forum/active-directory-trotz-skript-kann-benutzer-nicht-pw-aendern-33539108041.html

Ausgedruckt am: 22.12.2024 um 22:12 Uhr

kreuzberger
kreuzberger 29.01.2024 um 13:40:20 Uhr
Goto Top
@Kabuntel

Der Sinn, dass ein Haken im AD "Benutzer kann Kennwort nicht ändern“ gesetzt ist besteht darin, dass nur der Admin hier Passwortänderungen vornehmen kann. Da hilft auch kein Script.

Kreuzberger
erikro
erikro 29.01.2024 um 14:15:22 Uhr
Goto Top
Moin,

es gibt ein Mindestalter des Passworts. Ist das noch nicht erreicht, kann der User sein PW nicht ändern. Du findest das in den Kennwortrichtlinien der DDP. Das kann man umgehen, indem man den Haken "User muss beim nächsten Anmelden das Passwort ändern" als Admin setzt. Das überschreibt das Mindestalter.

hth

Erik
em-pie
em-pie 29.01.2024 aktualisiert um 17:15:24 Uhr
Goto Top
Moin,

Mir stellt sich ja gerade die Frage, ob das Script überhaupt über Zeile 1 hinaus kommt.
Du prüfst ja gar nicht, ob $user überhaupt im AD existiert. Oder passiert das irgendwo weiter oben im eigentlichen Script bzw. prüfst du nur, ob die Variable, nach dem Absetzen eines Queries gegen das AD, gefüllt ist?

Ferner prüfst du nirgends ab, ob der Haken überhaupt entfernt wurde.
Das würde ich mal mit einem try... catch abfangen und prüfen.
In Zeile 6 unterstellst du, dass Zeile 5 erfolgreich gewesen ist, geprüft hast du das aber nicht...

Ich lehne mich mal aus dem Fenster und behaupte, dass der User, der das Script startet, keine Rechte im AD hat, den Haken zu verändern.
jsysde
jsysde 29.01.2024 um 19:06:05 Uhr
Goto Top
Moin.

Ich denke, @erikro hat ins Schwarze getroffen - wenn "minimum password age" noch nicht erreicht ist, Default ist 1 Tag, dann kann der User das Passwort nicht selbst ändern.

Cheers,
jsysde