Mit VB in LDAP einen User anlegen

  • Allgemein

    Mit VB in LDAP einen User anlegen

    Hallo,
    ich habe folgendes Problem, ich möchte mittels VB einen User in LDAP anlegen.
    Als LDAP Server läuft der SunONE von Sun.
    Das Script stoppt bein bind immer und ich bekomme die Fehlermeldung: "Benutzername oder Passwort falsch"

    oder fachlich ausgedrückt

    -2147023570 0x8007052e
    [b]LDAP_INVALID_CREDENTIALS[/b]
    Dieser Fehler tritt auf, wenn bei der BIND-Authentifizierung am Verzeichnis der übergebenen Benutzernamen nicht existiert oder das Passwort falsch ist. Eventuell erlaubt der Server auch keine unverschlüsselte Anmeldung.


    VB.NET-Quellcode

    1. Sub main()
    2. Dim cn As IADsContainer 'LDAP - Objekte
    3. Dim usr As IADsUser
    4. Dim LDAP As IADsOpenDSObject
    5. Set LDAP = GetObject("LDAP:")
    6. 'Ein bind mit einer verschlüsselten Anmeldung
    7. Set cn = LDAP.OpenDSObject("LDAP://BIC-LDAP:46636,dc=bux,dc=bi-consulting,dc=de", "directory manager", "bicbicbic", 1)
    8. 'Ein bind mit einer unverschlüsselten Anmeldung
    9. 'Set cn = LDAP.OpenDSObject("LDAP://" & "BIC-LDAP:46636,bux,bi-consulting,de", "Directory Manager", "bicbicbic", 0)
    10. MsgBox "Verbunden"
    11. 'Aufruf der den Benutzer anlegt und dessen Eigenschaften konfiguriert
    12. Set usr = cn.Create("user", "CN=" & strUserName)
    13. usr.Put "sAMAccountName", CStr(strUserName) 'NT-Anmeldename
    14. usr.Put "userPrincipalName", CStr(strUserName) 'UPN-Name (Name@Organisation)
    15. usr.SetInfo 'Alles speichern
    16. usr.GetInfo 'und neu einlesen
    17. usr.Put "DisplayName", CStr(strUserName)
    18. usr.FullName = strUserName
    19. usr.LastName = strLastName
    20. usr.Description = strDescription
    21. usr.HomePage = strHomePagePath
    22. usr.Profile = strProfil
    23. usr.HomeDirectory = strHomedir
    24. usr.Put "homeDrive", CStr(strLaufwerk)
    25. usr.Put "msNpAllowDialin", True 'geht nur in nicht reiner Win2000 Domain
    26. usr.SetPassword CStr(strPasswd)
    27. usr.PasswordRequired = True
    28. If bolPasswdChangeAfterNextLogon <= True Then
    29. usr.Put "pwdLastSet", CLng(0) 'aktivierung des Passwort ändern Häkchens
    30. End If
    31. usr.AccountDisabled = bolAccountIsDisabled
    32. If strFirstName <> "" Then usr.FirstName = strFirstName
    33. If strFirstName <> "" Then usr.NamePrefix = strDescription
    34. usr.SetInfo 'Alles speichern
    35. End Sub



    was ist daran falsch?