Freigeben über


ldap_bindA-Funktion (winldap.h)

Die ldap_bind-Funktion authentifiziert einen Client asynchron beim LDAP-Server. Der Bindungsvorgang identifiziert einen Client an den Verzeichnisserver, indem er einen distinguished Name und einen Typ von Authentifizierungsanmeldeinformationen, z. B. ein Kennwort, bereitstellt. Die verwendete Authentifizierungsmethode bestimmt den Typ der erforderlichen Anmeldeinformationen.

Vorsicht Verwenden Sie diese Funktion nicht, es sei denn, eine TLS (SSL)-verschlüsselte Sitzung wurde eingerichtet. Diese Funktion sendet den Namen und das Kennwort im Klartext. Ein nicht autorisierter Benutzer, der den Netzwerkdatenverkehr überwacht, könnte das Kennwort lesen. Weitere Informationen zum Einrichten einer verschlüsselten Sitzung finden Sie unter Initialisieren einer Sitzung.
 

Syntax

WINLDAPAPI ULONG LDAPAPI ldap_bindA(
  [in] LDAP  *ld,
  [in] PSTR  dn,
  [in] PCHAR cred,
  [in] ULONG method
);

Parameter

[in] ld

Das Sitzungshandle.

[in] dn

Ein Zeiger auf eine NULL-Zeichenfolge, die den distinguished Name des zum Binden verwendeten Eintrags enthält.

[in] cred

Ein Zeiger auf eine NULL-beendete Zeichenfolge, die die Anmeldeinformationen enthält, die für die Authentifizierung verwendet werden sollen. Mit diesem Parameter können beliebige Anmeldeinformationen übergeben werden. Format und Inhalt der Anmeldeinformationen hängen von der Einstellung des Methodenparameters ab. Weitere Informationen finden Sie im Abschnitt mit Hinweisen.

[in] method

Die zu verwendende Authentifizierungsmethode.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert die Nachrichten-ID des initiierten Vorgangs.

Wenn die Funktion fehlschlägt, gibt sie –1 zurück und legt die Sitzungsfehlerparameter in der LDAP-Struktur fest.

Hinweise

Diese Implementierung von ldap_bind unterstützt die folgende Authentifizierungsmethode.

Authentifizierungsmethode BESCHREIBUNG Anmeldeinformationen
LDAP_AUTH_SIMPLE Authentifizierung mit einem Klartextkennwort. Eine Zeichenfolge, die das Benutzerkennwort enthält.
 

LDAP_AUTH_SIMPLE ist die einzige Authentifizierungsmethode, die mit der asynchronen Bindungsversion kompatibel ist. ldap_bind. Die Verwendung einer anderen Authentifizierungsmethode mit ldap_bind schlägt fehl und gibt LDAP_PARAM_ERROR zurück. Das Aufrufen ldap_bind mit der LDAP_AUTH_SIMPLE-Methode entspricht dem Aufrufen ldap_simple_bind. Für alle anderen Authentifizierungsmethoden ist eine synchrone Bindung erforderlich, die von ldap_bind_s bereitgestellt wird.

Beachten Sie, dass LDAP 2-Server eine Anwendung zum Binden benötigen, bevor sie andere Vorgänge versuchen, die eine Authentifizierung erfordern.

Multithreading: Bindungsaufrufe sind nicht sicher, da sie für die gesamte Verbindung gelten. Gehen Sie mit Vorsicht vor, wenn Threads Verbindungen gemeinsam nutzen und, wenn möglich, die Bindungsvorgänge mit anderen Vorgängen threaden.

Hinweis Der Microsoft LDAP-Client verwendet einen Standardtimeoutwert von 120 Sekunden für jeden Bindungsantwort-Roundtrip. Dieser Timeoutwert kann mithilfe der LDAP_OPT_TIMELIMIT Sitzungsoption geändert werden. Andere Vorgänge weisen kein Timeout auf, es sei denn, dies wird mithilfe von ldap_set_option angegeben.
 
Wenn alle Vorgänge für das Sitzungshandle abgeschlossen sind, beenden Sie die Sitzung, indem Sie das LDAP-Sitzungshandle an die ldap_unbind-Funktion übergeben. Wenn der ldap_bind-Aufruf fehlschlägt, sollte das Sitzungshandle mit einem Aufruf an ldap_unbind freigegeben werden, wenn die Fehlerwiederherstellung nicht mehr erforderlich ist.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile winldap.h
Bibliothek Wldap32.lib
DLL Wldap32.dll

Weitere Informationen

Einrichten einer LDAP-Sitzung

Funktionen

SEC_WINNT_AUTH_IDENTITY

ldap_bind_s

ldap_simple_bind

ldap_simple_bind_s

ldap_unbind