Ik ben er nog steeds niet uit. Ik heb de code eens uit de ASP-pagina getrokken en voer hem rechtstreeks op de server uit als VBS
Dit gebeurt er:
User 1 wordt gemaakt
User 1 wordt geënabled (+pass geset)
User 2 wordt gemaakt
User 2 enablen loopt fout: Active Directory Error 80005008 (zoals bovenstaande) op de .SetPassword .
Maw, 1x loopt het goed, 2e keer niet. Wie heeft een reden/oplossing?
Code: Selecteer alles
company = InputBox("company")
prefix = InputBox("prefix")
numberusers = InputBox("number of users")
startat = InputBox("Start at")
For i = startat to (numberusers+startat) username = LCase(prefix) & Cstr(i)
password = generatePassword(8)
return = CreateUser (username,company)
Call EnableUser(return,password)
next
'Defineer constanten
Const ADS_UC_SUPERUSER = "CN=Administrator,OU=Users,DC=extranet,DC=local"
Const ADS_UC_SUPERUSER_PWD = "P@ssw0rd"
Const ADS_UC_TARGET_OU = "OU=CustAccounts,OU=Extranet,DC=extranet,DC=local"
Function generatePassword(passwordLength)
Chars="abcdefghijklmnopqrstuvxyzABCDEFGHIJKLMNOPQRSTUVXYZ0123456789"
Randomize
lenChars = len(Chars)
For iCounter = 1 To passwordLength
iChar = Int((lenChars * Rnd) + 1)
tmpPass = tmpPass & Mid(Chars,iChar,1)
Next
generatePassword = tmpPass
End Function
Function CreateUser(username,company)
Set objRoot = GetObject("LDAP:")
Set objOU = objRoot.OpenDSObject("LDAP://"& ADS_UC_TARGET_OU, ADS_UC_SUPERUSER, ADS_UC_SUPERUSER_PWD, ADS_SECURE_AUTHENTICATION)
Set objUser = objOU.Create ("User", "cn=" & username)
objUser.sAMAccountName = username
objUser.Put "userPrincipalName", username + "@extranet.local"
objUser.Put "displayName", username
objUser.Put "Company", Cstr(company)
objUser.SetInfo
Set objUser = Nothing
Set objOU = Nothing
Set objRoot = Nothing
CreateUser = "LDAP://CN="& username &",OU=CustAccounts,OU=Extranet,DC=extranet,DC=local"
End Function
Sub EnableUser(strADsPath, wachtwoord)
Set objRoot = GetObject("LDAP:")
Set objUser = objRoot.OpenDSObject(strADsPath,ADS_UC_SUPERUSER,ADS_UC_SUPERUSER_PWD,ADS_SECURE_AUTHENTICATION)
objUser.SetPassword wachtwoord
objUser.AccountDisabled = False
objUser.Put "userAccountControl", 66048
objUser.SetInfo
Set objRoot = Nothing
Set objUser = Nothing
End Sub