1

LDAP 経由でユーザーを認証するためのサンプル クライアント (C/C++ でコーディング) を作成しています。クライアントは、Windows と Linux の両方で開発されています。

Linux の場合、(OpenSSL)でコンパイルされたOpenLDAPライブラリを使用しています。--with-tls暗号化されたチャネルを介してユーザーを認証するために、サーバーとクライアントの証明書の検証をスキップしています。そのために、ldap オプションを次のように設定しています。

option = LDAP_OPT_X_TLS_NEVER;
returnCode = ldap_set_option(vLdapConnection, LDAP_OPT_X_TLS_REQUIRE_CERT, &option);

if(returnCode != LDAP_OPT_SUCCESS){
    return FALSE;
}

これにより、証明書の検証がスキップされ、クライアントの認証が常に許可されます。

ただし、Windows ではアプリケーションに wldap.dll を使用しています。暗号化された接続を介した LDAP のサーバーとクライアントの証明書の検証を無効にする方法がわかりません。

私が通り抜けたとき:

returnCode = ldap_set_option(vLdapConnection, LDAP_OPT_SSL, LDAP_OPT_ON);

returnCode は常にに設定されますLDAP_SERVER_DOWN = 0x51

Windows で Wldap32.dll を使用して LDAP のクライアント証明書の検証を無効にする方法は??

4

1 に答える 1

2

具体的には、セッション オプションを見てくださいLDAP_OPT_SERVER_CERTIFICATE。サーバー証明書を検証するためのコールバック関数を指定できます。

于 2013-06-08T02:48:21.853 に答える