Benutzer via VB-Script anlegen
Hallo Zusammen,
ich habe ein VB-Script zum anlegen von Benutzer in einer AD. Jetzt wollte ich noch die Möglichkeit einbauen, nach anlegen des Benutzer, auswählen zu können in welche OU dieser verschoben werden soll.
Mein Problem ist jetzt nun das ich die Fehlermeldung bekomme "Zugriff verweigert" mit der Zeilenangabe 74 (objOU.MoveHere _ ...). Ich bin als Admin auf dem DC (in einer VM).
Ich danke schon mal im Voraus für jede Hilfe.
Gruß
ich habe ein VB-Script zum anlegen von Benutzer in einer AD. Jetzt wollte ich noch die Möglichkeit einbauen, nach anlegen des Benutzer, auswählen zu können in welche OU dieser verschoben werden soll.
strOU = InputBox("in welche OU soll der Nutzer " & Trim(details(0)) & " angelegt werden?")
Set objOU = GetObject("LDAP://cn=Users,dc=schulnetz,dc=local")
objOU.MoveHere _
"LDAP://ou=" & strOU & ",ou=Schule,dc=schulnetz,dc=local",vbNullString
Mein Problem ist jetzt nun das ich die Fehlermeldung bekomme "Zugriff verweigert" mit der Zeilenangabe 74 (objOU.MoveHere _ ...). Ich bin als Admin auf dem DC (in einer VM).
Ich danke schon mal im Voraus für jede Hilfe.
Gruß
Please also mark the comments that contributed to the solution of the article
Content-Key: 202933
Url: https://administrator.de/contentid/202933
Printed on: April 19, 2024 at 23:04 o'clock
9 Comments
Latest comment
Puh, ok. Also hier:
Habe eine Funktion gebaut, die du noch einbauen kannst.
Der Funktion musst du also nur noch die ZielOU mitgeben, sowie den User, der verschoben werden soll.
Also meinetwegen:
Gruß
B4DschK4Pp
Habe eine Funktion gebaut, die du noch einbauen kannst.
Sub moveToOU(OUName, Username)
On Error Resume Next
Const ADS_SCOPE_SUBTREE = 2
Set objOU = GetObject("LDAP://OU=" & OUName & ",OU=Schule,dc=schulnetz,dc=local")
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommand.CommandText = _
"SELECT ADsPath FROM 'LDAP://dc=schulnetz,dc=local' WHERE objectCategory='user' " & _
"AND Name='" & Username & "'"
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF
strADsPath = objRecordSet.Fields("ADsPath").Value
objOU.MoveHere strADsPath, vbNullString
objRecordSet.MoveNext
Loop
End Sub
Der Funktion musst du also nur noch die ZielOU mitgeben, sowie den User, der verschoben werden soll.
Also meinetwegen:
strOU = InputBox("in welche OU soll der Nutzer " & Trim(details(0)) & " angelegt werden?")
moveToOU strOU, Trim(Details(0))
Gruß
B4DschK4Pp