Problem - LDAP Abfrage

  • Allgemein

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem - LDAP Abfrage

    Guten Tag,
    vorab wenns das falsche Forum ist, dann bitte verschieben - Danke

    Folgendes - wir haben derzeit bei uns eine LDAP SQL Abfrage die auf unser AD zugreift.
    Und alle Felder die wir benötigen (Name, Vorname, Anschrift, etc etc usw usf.) Funktionieren auch Problemlos...AUßER die Abfrage nach der Funktion der Person.
    Denn die "description" Funktion spruckt folgende Fehlermeldung aus

    Server: Nachr.-Nr. 7346, Schweregrad 16, Status 2, Zeile 2 Die Daten der Zeile konnten nicht vom OLE DB-Provider 'ADSDSOObject' abgerufen werden. Der Datenwert konnte nicht konvertiert werden, aus anderen Gründen als nicht übereinstimmende Vorzeichen oder Überlauf.
    OLE DB-Fehlertrace [OLE/DB Provider 'ADSDSOObject' IRowset::GetData returned 0x80040e21: Data status returned from the provider: [COLUMN_NAME=description STATUS=DBSTATUS_E_CANTCONVERTVALUE]].


    Ich hoffe ihr versteht einigermaßen was ich versuchen will euch zu erläutern^^.
    Hier ist nochmal unsere Definition für das Feld "Beschreibung":

    SELECT
    description

    FROM OPENQUERY( ADSI,
    'SELECT
    description
    FROM
    ''LDAP://server/ DC=domain,DC=local''
    WHERE
    objectCategory = ''Person'' AND
    objectClass = ''user''
    order by
    Name')
  • Worfür brauchst du das denn? Wenn das wirklich in einem größeren Umfang genutzt werden soll, würde ich über eine andere Schnittstelle zum AD nachdenken. Ich habe z.B. einen C# Webservice geschrieben, der mir die wichtigsten Daten aus dem AD ausliest bzw. reinschreibt (z.B. User anlegen oder Attributwerte ändern). Wenn du SQL Server 2005 einsetzt, kannst du auch in C# eine stored procedure schreiben, die dir die Daten aus dem AD besorgt. Mit der LDAP Query in SQL bekommst du sowieso Probleme, sobald du mehrwertige Attribute (wie z.B. proxyaddresses) auslesen willst.