Voor een nieuwe folderstructuur op ons netwerk, moest ik een groot aantal nieuwe Domain Local Security Groups aanmaken. Dit doe je natuurlijk niet met de hand maar  via een script. Ik wist toevallig dat Bouke Groenescheij van www.jume.nl hier al een script voor had gemaak. Het script kun je hier vinden: http://www.jume.nl/index.php?option=com_content&task=view&id=73&Itemid=1

Zijn script heb ik een klein beetje aangepast zodat het Domain Local Security Groups aanmaakt i.p.v Global Security Groups.

Ik heb de volgende regels eruit gehaald:

Const ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP = 4
Const ADS_GROUP_TYPE_GLOBAL_GROUP       = 2
Const ADS_GROUP_TYPE_LOCAL_GROUP        = 4
Const ADS_GROUP_TYPE_SECURITY_ENABLED   = -2147483648
Const ADS_GROUP_TYPE_UNIVERSAL_GROUP    = 8

en vervangen voor:

Const ADS_GROUP_TYPE_GLOBAL_GROUP = &h4
Const ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000

Meer informatie over de Const ADS_GROUP_TYPE vindt je in dit document: 63_65_scripting_guy.pdf

Daarna moet je nog een regel aanpassen in het script:

‘ ################################################################
‘ CreateGroups.vbs – Create a lot of groups based on a text file
‘ Written by Bouke Groenescheij – Jume B.V.: http://www.jume.nl
‘ Version 1.0
‘ ################################################################

‘ You will need to supply this info:
strGroupParentDN = “ou=Bulkimport,dc=ctx45,dc=lab”

In het dik gedrukte gedeelte vul je de ou naam in en je domain. bijvoorbeel ctx45.lab

Nadat je dit gedaan hebt, moet je nog een textfile aanmaken. In deze tekstfile plaats je de naam van de groep en de description. Dit ziet er als volgt uit:

ctx_test1,testgroep1
ctx_test2,testgroep2
ctx_test3,testgroep3
ctx_test4,testgroep4
ctx_test5,testgroep5
ctx_test6,testgroep6
ctx_test7,testgroep7
ctx_test8,testgroep8
ctx_test9,testgroep9

Als laatste voer je het script als volgt uit:

cscript CreateGroups.vbs groups.txt

binnen enkele seconden zijn alle groepen aangemaakt.

Bouke bedankt voor het delen van dit handige script!

Advertisement

4 thoughts on “VBScript: Create a Domain Local Security Group

  1. Het kan nog simpeler.
    Maak het bestandje met groepsnamen en voer het volgende commando uit (vanuit een .cmd bestand)
    for /f “tokens=*” %%n in (‘type groupnames.txt’) do dsadd group “cn=%%n,ou=,dc=training,dc=com” -scope L
    (dit alles op 1 enkele commando regel)

    De verschillende Directory Service commando’s zijn het nalezen waard, zoals
    dsadd
    dsmod
    dsget
    dsrm
    dsquery

    http://support.microsoft.com/kb/322684 geeft een aardig inzicht.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.