Smilla Geschrieben 29. August 2006 Geschrieben 29. August 2006 Also ich soll ein Script schreiben das 100 neue Benutzer ins Active Directory einträgt. Habe Windows 2003 server hier auf Virtual PC installiert. Aber ich finde irgendwie keinen Ansatz! Hab auch schon bei Google gesucht, aber ich finde nichts Zitieren
Angelius Geschrieben 31. August 2006 Geschrieben 31. August 2006 ' Connection Object erzeugen Set ConnectionObject = CreateObject("ADODB.Connection") ConnectionObject.Provider = "ADSDSOObject" ConnectionObject.Open 'Command Object erzeugen Set CommandObject = CreateObject("ADODB.Command") 'Command Objet der Connection Zuweisen Set CommandObject.ActiveConnection = ConnectionObject Was du nun machen musst ist dich mit den beiden Objekte zu beschäftigen. Hilfe gibt es im Internet such ma im MSDN Zitieren
Klotzkopp Geschrieben 31. August 2006 Geschrieben 31. August 2006 @Angelius: Es geht um Active Directory, nicht ActiveX Data Objects. @k4fu: Die Problembeschreibung ist eigentlich schon ziemlich genau. @Smilla: Google, active directore create user vbs, erster Treffer Zitieren
Angelius Geschrieben 31. August 2006 Geschrieben 31. August 2006 Ich weis das es um Active Directory geht... glücklicherweise unterstützt Win 200X Server das LDAP Protokoll... und somit sollte das funzen oder die Fragestellung is wirklich zu kurz!!! grz Ange Zitieren
Klotzkopp Geschrieben 31. August 2006 Geschrieben 31. August 2006 Ich weis das es um Active Directory geht... glücklicherweise unterstützt Win 200X Server das LDAP Protokoll... und somit sollte das funzen Ich wusste gar nicht, dass das auch mit ADO geht - wieder was gelernt :floet: Hier noch ein Link dazu. Zitieren
Smilla Geschrieben 31. August 2006 Autor Geschrieben 31. August 2006 Jetzt ein bisschen differenziertere Angaben, außerdem soll ich jetzt erstmal beginnen das AD auszulesen und erst wenn ich das kapiert hab, was reinschreiben Hab mir von diesem Tool http://www.computerperformance.co.uk/Logon/LDAP_attributes_ADSIEdit.htm ein Script zum auslesen (will erst mal da AD auslesen bevor ich versuch was reinzuschreiben ) erstellen lassen. Jetzt sollte man da aber irgendwo den LDAP-Pfad eintragen, Problem: Wie finde ich den korrekten LDAP Pfad heraus? So sieht das generierte Script aus: strContainer = "Users" strName = "EzAdGroup" On Error Resume Next '*********************************************** '* Connect to an object * '*********************************************** Set objRootDSE = GetObject("LDAP://rootDSE") If strContainer = "" Then Set objItem = GetObject("LDAP://" & _ objRootDSE.Get("defaultNamingContext")) Else Set objItem = GetObject("LDAP://cn=" & strName & "," & strContainer & "," & _ objRootDSE.Get("defaultNamingContext")) End If '*********************************************** '* End connect to an object * '*********************************************** WScript.Echo VbCrLf & "** General Properties Page**" WScript.Echo "** (Single-Valued Attributes) **" strname = objItem.Get("name") WScript.Echo "name: " & strname strsamAccountName = objItem.Get("samAccountName") WScript.Echo "samAccountName: " & strsamAccountName strdescription = objItem.Get("description") WScript.Echo "description: " & strdescription strmail = objItem.Get("mail") WScript.Echo "mail: " & strmail WScript.Echo VbCrLf & "** General Properties Page**" WScript.Echo "** (The groupType attribute) **" Set objHash = CreateObject("Scripting.Dictionary") objHash.Add "ADS_GROUP_TYPE_GLOBAL_GROUP", &h2 objHash.Add "ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP", &h4 objHash.Add "ADS_GROUP_TYPE_UNIVERSAL_GROUP", &h8 objHash.Add "ADS_GROUP_TYPE_SECURITY_ENABLED", &h80000000 intgroupType = objItem.Get("groupType") For Each Key in objHash.Keys If objHash(Key) And intgroupType Then WScript.Echo Key & " is enabled." Else WScript.Echo Key & " is disabled." End If Next If intgroupType AND objHash.Item("ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP") Then WScript.Echo "Group Scope: Domain Local Group" ElseIf intGroupType AND objHash.Item("ADS_GROUP_TYPE_GLOBAL_GROUP") Then WScript.Echo "Group Scope: Global Group" ElseIf intGroupType AND objHash.Item("ADS_GROUP_TYPE_UNIVERSAL_GROUP") Then WScript.Echo "Group Scope: Universal Group" End If If intgroupType AND objHash.Item("ADS_GROUP_TYPE_SECURITY_ENABLED") Then WScript.Echo "Group Type: Security" Else WScript.Echo "Group Type: Distribution" End If WScript.Echo VbCrLf & "** Managed By Properties Page**" WScript.Echo "** (Single-Valued Attributes) **" strmanagedBy = objItem.Get("managedBy") WScript.Echo "managedBy: " & strmanagedBy If strmanagedBy <> "" Then Set objItem1 = GetObject("LDAP://" & strManagedBy) WScript.Echo "physicalDeliveryOfficeName: " & _ objItem1.physicalDeliveryOfficeName WScript.Echo "streetAddress: " & _ objItem1.streetAddress WScript.Echo "l: " & _ objItem1.l WScript.Echo "c: " & _ objItem1.c WScript.Echo "telephoneNumber: " & _ objItem1.telephoneNumber WScript.Echo "facsimileTelephoneNumber: " & _ objItem1.facsimileTelephoneNumber End If WScript.Echo VbCrLf & "** Member Properties Page**" WScript.Echo "** (MultiValued Attributes) **" strmember = objItem.GetEx("member") WScript.Echo "member:" For Each Item in strmember WScript.Echo vbTab & Item Next WScript.Echo VbCrLf & "** Member Of Properties Page**" WScript.Echo "** (MultiValued Attributes) **" strmemberOf = objItem.GetEx("memberOf") WScript.Echo "memberOf:" For Each Item in strmemberOf WScript.Echo vbTab & Item Next WScript.Echo VbCrLf & "** Managed By Properties Page**" WScript.Echo "** (Single-Valued Attributes) **" strmanagedBy = objItem.Get("managedBy") WScript.Echo "managedBy: " & strmanagedBy If strmanagedBy <> "" Then Set objItem1 = GetObject("LDAP://" & strManagedBy) WScript.Echo "physicalDeliveryOfficeName: " & _ objItem1.physicalDeliveryOfficeName WScript.Echo "streetAddress: " & _ objItem1.streetAddress WScript.Echo "l: " & _ objItem1.l WScript.Echo "c: " & _ objItem1.c WScript.Echo "telephoneNumber: " & _ objItem1.telephoneNumber WScript.Echo "facsimileTelephoneNumber: " & _ objItem1.facsimileTelephoneNumber End If Ich steh grad voll auf der Leitung, keine Ahnung wie ich jetzt vorgehen muss… Will erst mal im AD im Ordner Users die Gruppen auslesen… :confused: Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.