Gruppen in AD per Script und .txt
Hallo Admins und Helfer in Not.
Kurz vorweg. Bin seit 12 Tagen zweifacher Papa und jetzt kommt alles zusammen, deshalb bitte ich um eine kleine Nachsicht falls es einen ähnlichen Beitrag doch schon geben sollte.
Also nun mein eigenltiches problem.
Ich muss in einer Hauptschule viel Gruppen anlegen, jetzt haben wir (keine ahnung woher) schon ein .vbs script zum anlegen der User mit hilfe einer .txt-Datei, welche auch funktioniert.
Das selbe hätte ich nun auch gerne mit den Gruppen gemacht
Auf gut deutsch es muss ein Script sein das auf eine Textdatei zugreift und dann die Gruppen (Global - Sicherheit) im AD anlegt.
Ich hab echt lange gesucht, aber in der beziehung Programmierung und alles was im entferntesten damit zu tun hat habe ich zwei linke hände.
Ich habe das beim stöbern gefunden:
Das haut auch soweit hin aber eben nur mit der Gruppe -HR-Employees- und nicht mit einer txt-datei.
Ich hoffe ihr könnt mir weiterhelfen.
Ein gutes neues Jahr mit Gesundheit und Glück wünsch ich allen.
(Ein leicht gestresster, aber glücklicher kurzNachtVater)
Tom
Kurz vorweg. Bin seit 12 Tagen zweifacher Papa und jetzt kommt alles zusammen, deshalb bitte ich um eine kleine Nachsicht falls es einen ähnlichen Beitrag doch schon geben sollte.
Also nun mein eigenltiches problem.
Ich muss in einer Hauptschule viel Gruppen anlegen, jetzt haben wir (keine ahnung woher) schon ein .vbs script zum anlegen der User mit hilfe einer .txt-Datei, welche auch funktioniert.
Das selbe hätte ich nun auch gerne mit den Gruppen gemacht
Auf gut deutsch es muss ein Script sein das auf eine Textdatei zugreift und dann die Gruppen (Global - Sicherheit) im AD anlegt.
Ich hab echt lange gesucht, aber in der beziehung Programmierung und alles was im entferntesten damit zu tun hat habe ich zwei linke hände.
Ich habe das beim stöbern gefunden:
Const ADS_GROUP_TYPE_GLOBAL_GROUP = &h2
Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000
Set objOU = GetObject("LDAP://ou=Schule,dc=schulname,dc=de")
Set objGroup = objOU.Create("Group", "cn=HR-Employees")
objGroup.Put "sAMAccountName", "HRStaff"
objGroup.Put "groupType", ADS_GROUP_TYPE_GLOBAL_GROUP Or _
ADS_GROUP_TYPE_SECURITY_ENABLED
objGroup.SetInfo
Ich hoffe ihr könnt mir weiterhelfen.
Ein gutes neues Jahr mit Gesundheit und Glück wünsch ich allen.
(Ein leicht gestresster, aber glücklicher kurzNachtVater)
Tom
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 76988
Url: https://administrator.de/contentid/76988
Ausgedruckt am: 26.11.2024 um 01:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo kommy!
Soferne alle Gruppen in die selbe OU sollen und in der Textdatei jede Gruppe in einer eigenen Zeile steht, ginge das etwa so:
Gedacht ist das Script für einen Aufruf von der Kommandozeile, also etwa:
Falls Du über den Explorer starten willst, solltest Du die Zeile
entfernen, da Du ansonsten für jede Gruppe eine Messagebox wegklicken müsstest.
Noch eine kurze Anmerkung: Zum Posten von Code solltest Du < code>-Tags (ohne Leerzeichen) verwenden ...
Grüße
bastla
P.S.: Schlafen ist für Schwächlinge ...
Soferne alle Gruppen in die selbe OU sollen und in der Textdatei jede Gruppe in einer eigenen Zeile steht, ginge das etwa so:
'CreateGroupsFromList.vbs
Const OU = "ou=Schule,dc=schulname,dc=de"
Const List = "D\Gruppenliste.txt"
Const ADS_GROUP_TYPE_GLOBAL_GROUP = &h2
Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000
Set objOU = GetObject("LDAP://" & OU)
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FileExists(List) Then
WScript.Echo "Datei " & List & " nicht gefunden!"
WScript.Quit 1
End If
arrGruppen = Split(fso.OpenTextFile(List, 1, False).ReadAll, vbCrLF)
For Each strGruppe In arrGruppen
WScript.Echo "Erstelle Gruppe: " & strGruppe
MakeGroup strGruppe
Next
WScript.Echo "Fertig."
Sub MakeGroup(strGrName)
Set objGroup = objOU.Create("Group", "cn=" & strGrName)
objGroup.Put "sAMAccountName", strGrName
objGroup.Put "groupType", ADS_GROUP_TYPE_GLOBAL_GROUP Or _
ADS_GROUP_TYPE_SECURITY_ENABLED
objGroup.SetInfo
End Sub
"cscript //nologo C:\Scripts\CreateGroupsFromList.vbs"
WScript.Echo "Erstelle Gruppe: " & strGruppe"
Noch eine kurze Anmerkung: Zum Posten von Code solltest Du < code>-Tags (ohne Leerzeichen) verwenden ...
Grüße
bastla
P.S.: Schlafen ist für Schwächlinge ...
Moin kommy,
Glückwunsch zum Nachwuchs von mir und alles Gute.
Dieses hier:....
Oder war es wieder eine kurze Nacht? *gg
Grüße auch an die Mutter (falls es Zwillinge waren) bzw. an die Mütter.
Biber
Glückwunsch zum Nachwuchs von mir und alles Gute.
Dieses hier:....
Falls Du über den Explorer starten willst, solltest Du die Zeile
entfernen, da Du ansonsten für jede Gruppe eine Messagebox wegklicken müsstest.
...hast Du aber in bastlas Beitrag beherzigt?WScript.Echo "Erstelle Gruppe: " & strGruppe"
entfernen, da Du ansonsten für jede Gruppe eine Messagebox wegklicken müsstest.
Oder war es wieder eine kurze Nacht? *gg
Grüße auch an die Mutter (falls es Zwillinge waren) bzw. an die Mütter.
Biber