Für mehrere User im AD die Passwörter zurücksetzten
Hallo zusammen,
Folgendes Problem:
Ich sollte für mehrere User das Passwort im AD zurücksetzten.
Alle User sollen am Schluss das gleiche Passwort haben. Die User befinden sich in einer spez AU.
Frage:
Wie kann ich im AD für mehrer User das Passwort zurücksetzten OHNE das ich sie mir einzeln vornehmen muss?
Gibts da Möglichkeiten per Script, Tools etc..?
Vielen Dank
Gruss
JOML
Folgendes Problem:
Ich sollte für mehrere User das Passwort im AD zurücksetzten.
Alle User sollen am Schluss das gleiche Passwort haben. Die User befinden sich in einer spez AU.
Frage:
Wie kann ich im AD für mehrer User das Passwort zurücksetzten OHNE das ich sie mir einzeln vornehmen muss?
Gibts da Möglichkeiten per Script, Tools etc..?
Vielen Dank
Gruss
JOML
Please also mark the comments that contributed to the solution of the article
Content-Key: 72586
Url: https://administrator.de/contentid/72586
Printed on: April 20, 2024 at 14:04 o'clock
8 Comments
Latest comment
Hallo JOML2005!
Dafür sollte folgendes VBScript (Vorlage ausgeborgt bei MS themselves) reichen:
Grüße
bastla
Dafür sollte folgendes VBScript (Vorlage ausgeborgt bei MS themselves) reichen:
Set objOU = GetObject _
("LDAP://ou=PWTest,dc=firma,dc=local")
ObjOU.Filter = Array("user")
For Each objUser in objOU
objUser.SetPassword "i5A2sj*!"
Next
Grüße
bastla
Hallo JOML2005!
Um allerdings die von Dir gewünschte Ausgabe zu erzeugen, müsste das Script doch um 2 Zeilen erweitert werden:
Wenn Du das Script als "C:\Scripts\ResetPW4OU.vbs" speicherst, kannst Du es von der Kommandozeile mit
starten und erhältst die Ausgabe im CMD-Fenster, oder analog mit
ein Logfile.
Grüße
bastla
Kann ich das so Einsetzten, wie's da steht (natürlich an unsere AD Struktur angepasst), oder muss voher oder nacher noch was im Script stehen...?
Mehr braucht's eigentlich nicht, sorry ... Um allerdings die von Dir gewünschte Ausgabe zu erzeugen, müsste das Script doch um 2 Zeilen erweitert werden:
Set objOU = GetObject _
("LDAP://ou=PWTest,dc=firma,dc=local")
ObjOU.Filter = Array("user")
WScript.Echo "Fuer folgende User wurde das Passwort zurueckgestellt:" & vbCrLF
For Each objUser in objOU
WScript.Echo objUser.sAMAccountName & " (" & Replace(objUser.Name, "CN=", "") & ")"
objUser.SetPassword "i5A2sj*!"
Next
Wenn Du das Script als "C:\Scripts\ResetPW4OU.vbs" speicherst, kannst Du es von der Kommandozeile mit
cscript //nologo C:\Scripts\ResetPW4OU.vbs
cscript //nologo C:\Scripts\ResetPW4OU.vbs > D:\ResetPW4OU.txt
Grüße
bastla
Hallo JOML2005!
zu starten.
Ob Dein LDAP-Pfad stimmt (zB Sub-Domain "YYYY"), musst Du natürlich selbst überprüfen, ansonsten sieht syntaktisch alles OK aus und läuft (natürlich mit meinen Domäneneinstellungen) hier auch.
Grüße
bastla
Das CMD Fenster geht ganz kurz auf und wieder zu...
Die Idee ist es eigentlich, zunächst über "Start / Ausführen... / cmd" ein CMD-Fenster zu öffnen und von der Kommandozeile aus das Script, wie beschrieben, mitcscript //nologo C:\Scripts\test.vbs
Ist da noch irgedwo ein Fehler drin...?
Das lässt sich leichter erkennen, wenn Du < code>-Tags (ohne Leerzeichen) verwendest ...Set objOU = GetObject _
("LDAP://ou=UsersGeneric,ou=Test,ou=IT,ou=AdminUnits,dc=YYYY,dc=XXXX,dc=com")
objOU.Filter = Array("user")
WScript.Echo "Fuer folgende User Accounts wurde das Passwort zurueckgestellt:" & vbCrLF
For Each objUser in objOU
WScript.Echo objUser.sAMAccountName & " (" & Replace(objUser.Name, "CN=", "") & ")"
objUser.SetPassword "TesT2007"
Next
Grüße
bastla
@joml2005
Es sind schon Fragende aus geringerem Anlass gevierteilt worden.
Aber egal, der Beitrag ist hervorragend gelöst worden und ich schliesse ihn jetzt guten Gewissens.
Grüße
Biber
Ist da noch irgedwo ein Fehler drin...?
Diese Frage (am besten mit treuherzigem Wimpernschlag) liebe ich auch bei meinen Kunden.Es sind schon Fragende aus geringerem Anlass gevierteilt worden.
Aber egal, der Beitrag ist hervorragend gelöst worden und ich schliesse ihn jetzt guten Gewissens.
Grüße
Biber