Поделиться через


функция ldap_bind (winldap.h)

Функция ldap_bind асинхронно проверяет подлинность клиента на сервере LDAP. Операция привязки идентифицирует клиент к серверу каталогов, предоставляя различающееся имя и некоторый тип учетных данных проверки подлинности, например пароль. Используемый метод проверки подлинности определяет тип необходимых учетных данных.

Осторожностью Если не установлен сеанс с шифрованием TLS (SSL), не используйте эту функцию. Эта функция отправляет имя и пароль в виде открытого текста. Неавторизованный пользователь, отслеживающий сетевой трафик, может прочитать пароль. Дополнительные сведения о том, как установить зашифрованный сеанс, см. в разделе Инициализация сеанса.
 

Синтаксис

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

Параметры

[in] ld

Дескриптор сеанса.

[in] dn

Указатель на строку, завершающуюся null, которая содержит различающееся имя записи, используемой для привязки.

[in] cred

Указатель на строку, завершающуюся значением NULL, которая содержит учетные данные, используемые для проверки подлинности. С помощью этого параметра можно передать произвольные учетные данные. Формат и содержимое учетных данных зависят от параметра метода. Дополнительные сведения см. в разделе «Примечания».

[in] method

Используемый метод проверки подлинности.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение — это идентификатор сообщения инициированной операции.

Если функция завершается сбоем, она возвращает –1 и задает параметры ошибки сеанса в структуре LDAP.

Комментарии

Эта реализация ldap_bind поддерживает следующий метод проверки подлинности.

Метод проверки подлинности Описание Учетные данные
LDAP_AUTH_SIMPLE Проверка подлинности с помощью пароля в виде открытого текста. Строка, содержащая пароль пользователя.
 

LDAP_AUTH_SIMPLE является единственным методом проверки подлинности, совместимым с асинхронной версией привязки; ldap_bind. Использование любого другого метода проверки подлинности с ldap_bind приведет к сбою и возврату LDAP_PARAM_ERROR. Вызов ldap_bind с помощью метода LDAP_AUTH_SIMPLE эквивалентен вызову ldap_simple_bind. Все остальные методы проверки подлинности требуют синхронной привязки, предоставляемой ldap_bind_s.

Имейте в виду, что серверы LDAP 2 требуют привязки приложения перед выполнением других операций, требующих проверки подлинности.

Многопоточность. Привязка вызовов небезопасна, так как они применяются к соединению в целом. Будьте осторожны, если потоки совместно используют подключения и, по возможности, поток операций привязки с другими операциями.

Примечание Клиент Microsoft LDAP использует значение времени ожидания по умолчанию, равное 120 секундам, для каждого обхода ответа привязки. Это значение времени ожидания можно изменить с помощью параметра сеанса LDAP_OPT_TIMELIMIT . Другие операции не имеют времени ожидания, если не указано с помощью ldap_set_option.
 
После завершения всех операций с дескриптором сеанса завершите сеанс, передав дескриптор сеанса LDAP функции ldap_unbind . Кроме того, если вызов ldap_bind завершается сбоем, дескриптор сеанса должен быть освобожден с вызовом ldap_unbind , если для восстановления ошибок больше не требуется.

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header winldap.h
Библиотека Wldap32.lib
DLL Wldap32.dll

См. также раздел

Создание сеанса LDAP

Функции

SEC_WINNT_AUTH_IDENTITY

ldap_bind_s

ldap_simple_bind

ldap_simple_bind_s

ldap_unbind