2011-06-21 7 views
5

SSLを使用してspring-ldapを使用してLDAPサーバーと通信する必要があり、もう一方のエンドには自己署名証明書がありません。sslでspring-ldapを使用する

これを設定するための指示がありますか?

答えて

4

HTTP(S)を介してLDAPサーバーに接続するための​​3210ドキュメントをチェックアウト:

限り、自己署名証明書が関係しているとして、あなたは、トラストストアに証明書チェーンをインポートすると、次のVM引数を設定することができます

-Djavax.net.ssl.trustStore="<path to truststore file>" 
-Djavax.net.ssl.trustStorePassword="<passphrase for truststore>" 

など、実行時にトラストストアを上書き:D両方のオプションが無効になります覚えておいてください

System.setProperty("javax.net.ssl.trustStore","<path to truststore file>"); 
System.setProperty("javax.net.ssl.trustStorePassword","<passphrase for truststore>"); 

JVMトラストストアを作成します。したがって、異なる証明書を持つ異なるサイトにアクセスしている場合は、それらをすべて1つのトラストストアにインポートすることができます。

あなたはこれを参照、トラストストア・ファイルを作成する支援が必要な場合には

Digital Certificate: How to import .cer file in to .truststore file using?

+0

また、ldap接続のプロトコルも確認してください。通常はldapを使用してください。 –

+0

TLS接続にも対応していますか?または 'ldaps://'のみ? – BigDong

0

注:もう一方の端は、あなたはまた、認証チェックをスキップ可能性が信頼できるソースであれば、私がしなければならなかったとして、任意の数ヶ月理由証明書が変更され、私は自分のローカルトラストストアと他の環境のトラストストア、テスト、プロダクション、新しい証明書に毎回インポートするように制約されました。

+1

この方法は有効ですが、その結果を認識する必要があります...機密データを扱う場合、両方のマシンが同じサイトにあってもお勧めしません...信頼できる証明書を使用すると、あなたが話しているサーバーは真正なものであり、ミドルアタックの男性ではありません...クライアントとサーバーのコミュニケーションのために、私はまったくお勧めしません... – Martin

関連する問題