LDAP 接続を持つアプリケーションに取り組んでいます。これまで、Open JLDAP ライブラリのみを使用して LDAP 検索と認証を実行してきました。暗号化されていない接続と SSL 接続の両方で、Active Directory と Oracle Internet Directory に接続して、これをうまく使用している多くのクライアントがいます。
最近、IBM Tivoli Directory を使用するクライアントがありました。標準モード (非 SSL) の場合、OpenLDAP ライブラリはこのサーバーに正常に接続しますが、SSL を使用すると、検索の実行時に接続が切断されます。バインドと読み取りは正常に機能します。
表示されるエラーは次のとおりです。
LDAPException: ldap.host:389 (91) 接続エラー java.io.EOFException: BERDecoder: デコード: 識別子の EOF からの結果を待っているときに接続が失われました
これは JLDAP の問題だと思ったので、コードを UnboundId LDAP ライブラリに置き換えましたが、同様の問題が発生しました..接続は、SSL の下でのみ、検索を実行するときにのみ切断されます。
テストとして、Tivoli Directory の試用版をインストールし、SSL を有効にしました。JLDAP ライブラリと UnBoundID ライブラリの両方が、私のインスタンスに対して正しく機能します。
SSL の下でのみ接続がドロップされるようにする設定オプションが Tivoli にありますか?
SSL経由でクライアントのLDAPサーバーに接続して検索できるLDAPツール(jxplorer)があります。jxplorer は LDAP 接続に JNDI ライブラリを使用していると思います。
LDAPコードを移植してJNDI LDAPコードを使用する前に、他に試すことができるものがあるかどうかを確認したかったのです...(それでも同じ問題が発生する可能性があります)。
アイデア歓迎...
ありがとう。