Jump to content

Eingelese Objekte überprüfen in VBScript


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo,

 

vorweg möchte ich erwähnen, das ich noch ein Anfänger bin was Scripting betrifft. Ich muss ein Script schreiben welches bei allen Benutzern in der Domäne das Feld "Company" füllt. In den Grundzügen habe ich das Script auch bereits fertig, nur ergeben sich für mich 2 abschliessende Probleme: Mein Script nimmt alle Objekte (Benutzer als auch Gruppen) und versucht das Feld Company zu befüllen es soll aber nur die Benutzer "anfassen" und mein 2. Problem ist, wie kann ich das Script so umbauen, dass es wahllos alle OUs auf dem Server durchsucht und nicht nur die Standard OU "Users"?

 

So sieht mein Script bisher aus:

On Error Resume Next

Const vCompany = "MusterCompany"*
Set objRootLDAP = GetObject("LDAP://rootDSE")
strDNSDomain = objRootLDAP.Get("defaultNamingContext")
Set objContainer = GetObject("LDAP://cn=Users," & strDNSDomain)
Set ou = GetObject ("LDAP://test.test.de/CN=Users, dc=test, dc=test, dc=de")**

For Each obj In ou

 If obj
obj.Put "company", vCompany
obj.SetInfo	
WScript.Echo obj.samAccountName & VbCrLf & obj.company***

Next

 

*) Handelt sich an der Stelle nur um ein Beispiel.

**) Das Script läuft momentan noch auf einer Testdomäne, daher auch der komische LDAP-Pfad ;).

***) Das WScript ist zu Debugg-Zwecken drin.

 

Vielen Dank an alle die Antworten!

 

Mit freundlichen Grüßen

 

Wolfi

Geschrieben

Mach doch einfach eine "Gespeicherte Abfrage" in AD User and Computer mit folgendem Syntax:

(&(objectCategory=person)(objectClass=user)(name=*))

Dann alle Benutzer markieren und unter Eigenschaften den Namen der Firma eintragen.

 

//edit

Syntax gefixt *g*

 

oder noch einfacher per Kommandozeile:

 

dsquery user | dsmod user -company "Deine Firma"

Geschrieben

Hallo

 

danke nochmal an alle Antwortenden. Da ich heute im Aussendienst bin, komme ich leider nicht dazu, alles zu bearbeiten, werde dies aber dann am Mittwoch nachholen.

 

@ blub: Ich werde meinem Chef den Einzeiler nochmal vorschlagen. :)

 

@ ducke:

 

dsquery user | dsmod user -company "Deine Firma"

 

Wenn ich diesen Befehl über die Kommandozeile ausführe, dann gibt er doch alle Benutzer aus dem AD, egal welcher OU sie angehören, per dsquery an dsmod weiter oder?

Und abschliessend ändert dsmod dann bei allen das Feld Company auf "Deine Firma" richtig?

 

Ich weiß ich bin anstrengend und ein Newbie. :(

 

Gruß Wolfi

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...