Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Tool zum Anlegen von AD Gruppen gesucht

Frage Sonstige Systeme

Mitglied: limonadoo

limonadoo (Level 1) - Jetzt verbinden

16.11.2006, aktualisiert 19:24 Uhr, 5207 Aufrufe, 3 Kommentare

Hallo,

wir sind gerade dabei, alle Verzeichnisse für alle Abteilungen nach den Best Practice Regeln von Microsoft zu überarbeiten (Globale Gruppe in Lokale Gruppe, NTFS Rechte auf die Lokale Gruppe und die User in die Globale Gruppe).

Das funktioniert auch sehr gut, nur ist es ziemlich aufwendig, weil das pro unterordner 4 Gruppen sind (2x Local R+W und 2x Global R+W) und bedeutet ca. 50 Gruppen pro Verzeichnis und 30 Verzeichnisse.

Ich bin auf der Suche nach einem Tool, das mir genau das abnimmt. D.h. Nice-to-Have Lösung wäre: Ich würde eine Excel oder .txt anlegen, da reinschreiben, wie die Gruppen heißen, ob lokal oder global und dann in einer OU anlegen lassen und später diese dann innerhalb des ADs verschieben. Zwei Programme (einmal nur globale und einmal nur lokale Gruppen) wären auch OK.

Domäne ist komplett W2K3.

Kennt jemand so ein Tool?

Habt Dank.
Mitglied: bastla
16.11.2006 um 19:24 Uhr
Hallo limonadoo!

Aus MS-Materialien zusammengebastelt:
01.
'MakeGroups.vbs 
02.
Const ADS_GROUP_TYPE_LOCAL_GROUP = &h4 
03.
Const ADS_GROUP_TYPE_GLOBAL_GROUP = &h2 
04.
Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000 
05.
Const ADS_PROPERTY_APPEND = 3  
06.
 
07.
Const sDomain = "dc=test,dc=local" 
08.
Const sList = "C:\Gruppenliste.txt" 
09.
 
10.
Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
11.
Set oGrpList = fso.OpenTextFile(sList, 1) 
12.
 
13.
Do While Not oGrpList.AtEndOfStream 
14.
	'Read GroupName 
15.
	sGroupName = oGrpList.ReadLine 
16.
	sGroupLocal =  "L" & sGroupName 'Benennung Lokale Gruppe 
17.
	sGroupGlobal = "G" & sGroupName 'Benennung Globale Gruppe 
18.
 
19.
	'Create Local Group 
20.
	Set objOU = GetObject("LDAP://cn=users," & sDomain) 
21.
	Set objGroup = objOU.Create("Group", "cn=" & sGroupLocal) 
22.
 
23.
	objGroup.Put "sAMAccountName", sGroupLocal 
24.
	objGroup.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or _ 
25.
		ADS_GROUP_TYPE_SECURITY_ENABLED 
26.
	objGroup.SetInfo 
27.
 
28.
	'Create Global Group 
29.
	Set objOU = GetObject("LDAP://cn=users," & sDomain) 
30.
	Set objGroup = objOU.Create("Group", "cn=" & sGroupGlobal) 
31.
 
32.
	objGroup.Put "sAMAccountName", sGroupGlobal 
33.
	objGroup.Put "groupType", ADS_GROUP_TYPE_GLOBAL_GROUP Or _ 
34.
		ADS_GROUP_TYPE_SECURITY_ENABLED 
35.
	objGroup.SetInfo 
36.
 
37.
	'Add Global Group To Local Group 
38.
	Set objGroup = GetObject("LDAP://cn=" & sGroupLocal & ",cn=Users," & sDomain)  
39.
 
40.
	objGroup.PutEx ADS_PROPERTY_APPEND, "member", _ 
41.
		Array("cn=" & sGroupGlobal & ",cn=Users," & sDomain) 
42.
	objGroup.SetInfo 
43.
Loop 
44.
oGrpList.Close
Das Script liest eine Listendatei "C:\Gruppenliste.txt" zeilenweise aus, erzeugt je Eintrag eine Lokale (mit Präfix "L") und eine Globale (Präfix "G") Sicherheitsgruppe in der OU "Users" und nimmt die Globale Gruppe in die Lokale Gruppe auf.

Die beiden "Const"-Einträge für Domäne und Listendatei sind an Deine Gegebenheiten anzupassen, desgleichen die Namenskonventionen für die Gruppen.

Errorhandling und Logging sind nicht implementiert.

HTH
bastla
Bitte warten ..
Mitglied: wuwu
08.01.2009 um 13:17 Uhr
Hallo bastla,

Ich habe in meiner Liste 10 Einträge (Gruppen die im AD angelegt werden sollten! Das funktioniert, jetzt habe ich noch das Problem: Die Gruppe 3 aus dem Array müßte in die Gruppe 5 & 8 der Array Einträge, wie kann ich das lösen?
Ich hoffe du kannst mir helfen!

Const OU = "ou=Test,ou=Untergruppe,ou=Groups,dc=Firma,dc=corp"
Const List = "C:\Temp\Gruppenliste.txt"
Const ADS_GROUP_TYPE_LOCAL_GROUP = &h4
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
MakeGroup strGruppe
wScript.Echo "Erstelle Gruppe: " & strGruppe & i
Next
WScript.Echo "Fertig."
Sub MakeGroup(strGrName)
Set objGroup = objOU.Create("Group", "cn=" & strGrName)
objGroup.Put "sAMAccountName", strGrName
objGroup.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or _
ADS_GROUP_TYPE_SECURITY_ENABLED
objGroup.Put "description", "Beschreibung"
objGroup.SetInfo
End Sub
Bitte warten ..
Mitglied: bastla
08.01.2009 um 19:35 Uhr
Hallo wuwu!

Versuch es so:
01.
Const OU = "ou=Test,ou=Untergruppe,ou=Groups,dc=Firma,dc=corp" 
02.
Const List = "C:\Temp\Gruppenliste.txt" 
03.
intGr = 2 'Index der Gruppe, die hinzugefügt werden soll 
04.
arrHinzu = Array(4,7) 'Indizes der Gruppen, in denen obige Gruppe Mitglied werden soll 
05.
 
06.
Const ADS_GROUP_TYPE_LOCAL_GROUP = &h4 
07.
Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000 
08.
Const ADS_PROPERTY_APPEND = 3 
09.
Set objOU = GetObject("LDAP://" & OU) 
10.
 
11.
Set fso = CreateObject("Scripting.FileSystemObject") 
12.
If Not fso.FileExists(List) Then 
13.
    WScript.Echo "Datei " & List & " nicht gefunden!" 
14.
    WScript.Quit 1 
15.
End If 
16.
arrGruppen = Split(fso.OpenTextFile(List, 1, False).ReadAll, vbCrLF) 
17.
 
18.
For Each strGruppe In arrGruppen 
19.
    WScript.Echo "Erstelle Gruppe: " & strGruppe 
20.
    MakeGroup strGruppe 
21.
Next 
22.
 
23.
'Mitgliedschaften setzen 
24.
strGr = "cn=" & arrGruppen(intGr) & "," & OU 
25.
For Each intHinzu In arrHinzu 
26.
    WScript.Echo "Füge """ & arrGruppen(intGr) & """ der Gruppe """ & arrGruppen(intHinzu) & """ hinzu" 
27.
    Set objGroup = GetObject("LDAP://cn=" & arrGruppen(intHinzu) & "," & OU) 
28.
    objGroup.PutEx ADS_PROPERTY_APPEND, "member", Array(strGr) 
29.
    objGroup.SetInfo 
30.
Next 
31.
WScript.Echo "Fertig." 
32.
 
33.
Sub MakeGroup(strGrName) 
34.
Set objGroup = objOU.Create("Group", "cn=" & strGrName) 
35.
objGroup.Put "sAMAccountName", strGrName 
36.
objGroup.Put "groupType", ADS_GROUP_TYPE_LOCAL_GROUP Or _ 
37.
ADS_GROUP_TYPE_SECURITY_ENABLED 
38.
objGroup.Put "description", "Beschreibung" 
39.
objGroup.SetInfo 
40.
End Sub
Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Powershell Script zum verschachteln von AD Gruppen Domain Übergreifend (1)

Frage von Lukas4580 zum Thema Batch & Shell ...

Windows Server
gelöst Wie hieß das Tool nochmal um die AD Anzeige der Reiter zu erweitern? (7)

Frage von M.Marz zum Thema Windows Server ...

Windows Tools
Change Management Tool gesucht (4)

Frage von xbast1x zum Thema Windows Tools ...

LAN, WAN, Wireless
Software für Backup oder Datensynchronisation über WAN gesucht (3)

Frage von Rubiks zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...