Printout Header
RSS Feed

Erste Schritte: Einfache Script-Beispiele


Stellen Sie sich vor, sie sind Administrator der Active Directory Domäne "example.com". Von einem Domänen-Controller "DC1" möchten Sie Informationen über Objekte im Active Directory abrufen - und das wenn möglich per Script. Vielleicht möchten Sie sogar Objekte und deren Eigenschaften verändern.


Mit dem Active Directory Services Interface stellt dies kein Problem dar. Schauen Sie sich kurz die folgenden Beispielskripte an. Wenn Sie nicht wissen, wie Visual Basic Scripts ausgeführt werden, dann lesen sie zuerst die Anleitung zum Schreiben und Ausführen von VBScripts hier im SelfADSI Tutorialdurch.



Beispiel 1


Zuerst wollen wir einmal alle Objekte der OU "Fabrikation" anzeigen lassen:


Set ou = GetObject("LDAP://dc1.example.com/ou=Fabrikation,dc=example,dc=com") For Each obj In ou 'Für alle Objekte der OU WScript.Echo obj.name '...zeige den Objektnamen Next

Sie sind verwirrt über die Funktion GetObject, mit der wir uns mit dem AD-Verzeichnis verbunden haben? Dann informieren Sie sich im Abschnitt "Verbindung mit dem Verzeichnis und Objekten herstellen" im SelfADSI-Tutorial.


Oder Sie haben Probleme mit dem seltsamen Pfadnamen LDAP://dc1.example.com/ou0Fabrikation,dc=example,dc=com? Dann lesen Sie am besten zuerst einmal dens Abschnitt "LDAP-Pfadnamen - Distinguished Names" dieses Tutorials.


Beispiel 2


Wir verfeinern unser Beispiel etwas. Nun möchten wir alle Anzeigenamen von Benutzern in der OU sehen:


Set ou = GetObject("LDAP://dc1.example.com/ou=Fabrikation,dc=example,dc=com") For Each obj In ou 'Für alle Objekte der OU... If (obj.Class = "user") Then 'Nur für User... WScript.Echo obj.displayName '...zeige den AnzeigeNamen WScript.Echo obj.mail '...und die Mail-Adresse End If Next

Sie wundern sich, wie man auf die Namen der Attribute kommt? Lesen Sie doch einfach die genauen Beschreibungen der Eigenschaft "Class" für Benutzerobjekte. Im SelfADSI-Tutorial sind die Beschreibungen aller Attribute von den Objektklassen AD-User, AD-Kontakt, AD-Gruppe und Exchange 5.5-Postfach verfügbar.



Beispiel 3


Eine andere Situation: Sie möchten für Testzwecke schnell mal eben 500 Benutzer in der OU "Test" erzeugen. Folgendes Script erledigt das für Sie:


Set ou = GetObject("LDAP://dc1.example.com/ou=Test,dc=example,dc=com") For i = 1 To 500 '500x ... set user = ou.Create("user", "cn=Benutzer" & i) '... einen User erzeugen user.sAMAccountName = "Benutzer" & i 'Anmeldenamen setzen user.displayName = "Benutzer" & i 'AnzeigeName setzen user.SetInfo 'Daten auf den Server schreiben! Next

Genaue Anleitungen zum Erzeugen der verschiedensten Objekttypen erhalten Sie im Abschnitt "Objekte erzeugen" in diesem Tutorial.