VBA6 Excel auf LDAP

andifront

Grünschnabel
Hallo ich habe folgendes Problem ich möchte mit VBA6 Excel auf einen LDAP-Server zugreifen der unter Linux läuft.
Ich Probiere es gerade mit der Bibliothek Wldap32.dll aber die Funktionen lassen sich nicht einbinden.

Kann mir jemand helfen?

P.S.: Bin ein absoluter Anfänger in VB
 
Das ist eigentlich gar nicht so schwer:

Code:
Private Function LDAPQuery(ByVal command As String) As ADODB.Recordset
    On Error GoTo Error
    Dim objDSE, objConnection, objCommand As Object
    Dim adodbRecordset As ADODB.Recordset
    
    Set objDSE = GetObject("LDAP://ldap.xxxxx.com:389/o=xxx.com")

    Set objConnection = CreateObject("ADODB.Connection")
    objConnection.Provider = "ADsDSOObject"
    objConnection.Open

    Set objCommand = CreateObject("ADODB.Command")
    Set objCommand.ActiveConnection = objConnection

    objCommand.CommandText = command

    Set LDAPQuery = objCommand.Execute
    
    Exit Function

Error:
    MsgBox "LDAP Error. Please try again later.", vbCritical
    End
End Function

Aufruf:

Code:
Dim command As String
    Dim adodbRecordset As ADODB.Recordset
    
    command = "SELECT cn,co " & _
                "FROM 'LDAP://ldap.xxxxx.com:389/ou=xxx,o=xxx.com' " + _
                "WHERE xxxxx='" + strVariable + "'"
    
    Set adodbRecordset = LDAPQuery(command)

Musst natürlich alle Werte("xxxxx") an deine Verzeichnisstruktur anpassen...
Im Recordset hast du dann die Datensätze die von der Abfrage zurück gegeben wurden.

Grüße
NeMeSiS
 
Ich danke dir für deine schnelle Hilfe dennoch versteh ich nicht ganz was du meinst.
Könntest du mir(DAU) das ein wenig erklären und das nächste Problem wäre dass ich mich als root(oder anderen User) anmelden muss um Gruppen oder andere User zu erstellen.

In LDAP kenn ich zumindestens die standard Begriffe was ich leider von VBA nicht behaupten kann.
 
Diese Funktion dient nur für Abfragen und man ist anonym angemeldet. Von daher passt das für dich anscheinend nicht.
Jedoch musst du auf die gleich Weise eine Verbindung aufbauen, nur eben deinen Benutzernamen/Passwort mit übergeben. Wie das genau aussehen muss weiß ich leider auch nicht...
Hab das damals auch auf ner website gesehen, nur hab ich den Link nicht mehr.
Vielleicht kann dir jemand anders helfen...

Grüße
 
Zurück