Passwort-Reset Batch für User in einer OU und direkt auch alles Unter-OU eingebunden
Hallo
Mein bestehender Batch sieht wiefolgt aus, er setzt alles Passwörter der User in der OU=abteilung01 zurück auf test-01.
Soweit so gut...Zu meiner Frage / Zu meinem Problem:
In der OU=abteilung01 sind noch "Unter-OU" bez. andere Container (z.B. unterabteilung01). In diesen sind auch noch User.
Wie kann man den Batch so modifizieren das er alle alle User nimmt. Auch die, die in einem Unter-Container sind?
Danke für die Hilfe...
Mein bestehender Batch sieht wiefolgt aus, er setzt alles Passwörter der User in der OU=abteilung01 zurück auf test-01.
Set objOU = GetObject("LDAP://ou=abteilung01,dc=firma,dc=ch")ObjOU.Filter = Array("user")WScript.Echo "Bei folgenden User Accounts wurde das Passwort auf test-01 zurueckgestellt:" & vbCrLF For Each objUser in objOU WScript.Echo objUser.sAMAccountName & " (" & Replace(objUser.Name, "CN=", "") & ")" objUser.SetPassword "test-01"Next
Soweit so gut...Zu meiner Frage / Zu meinem Problem:
In der OU=abteilung01 sind noch "Unter-OU" bez. andere Container (z.B. unterabteilung01). In diesen sind auch noch User.
Wie kann man den Batch so modifizieren das er alle alle User nimmt. Auch die, die in einem Unter-Container sind?
Danke für die Hilfe...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 113146
Url: https://administrator.de/contentid/113146
Ausgedruckt am: 22.11.2024 um 19:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo ineichp und willkommen im Forum!
Ungetestet (aber auf Basis einer Lösung von Richard Mueller) etwa so:
Grüße
bastla
P.S.: Dein "Batch" wäre in meinem Sprachgebrauch ein "Script" ...
Ungetestet (aber auf Basis einer Lösung von Richard Mueller) etwa so:
Set objOU = GetObject("LDAP://ou=abteilung01,dc=firma,dc=ch")
WScript.Echo "Bei folgenden User Accounts wurde das Passwort auf test-01 zurueckgestellt:" & vbCrLF
EnumUsers(objOU)
Sub EnumUsers(objParent)
objParent.Filter = Array("user")
For Each objUser In objParent
WScript.Echo objUser.sAMAccountName & " (" & Replace(objUser.Name, "CN=", "") & ")"
objUser.SetPassword "test-01"
Next
objParent.Filter = Array("organizationalUnit")
For Each objChild In objParent
EnumUsers(objChild)
Next
End Sub
bastla
P.S.: Dein "Batch" wäre in meinem Sprachgebrauch ein "Script" ...