14

コマンドラインまたはカスタム Trust Manager を介して、cacerts に基づくカスタム trustStore を作成する方法はありますか?

アプリケーションは、カスタム trustStore を使用します。

-Djavax.net.ssl.trustStore=/SSL/CATrust.jks

独自の信頼証明書を保持するため、これはカスタム ファイルで行われ、cacert を移行することなく JDK のアップグレードを簡素化しました。

問題は、cacerts が CATrust.jks にインポートしていない非常に多くの標準証明書を保持していることです。このため、(cacerts 証明書に加えて) コマンドライン プロパティを介して提供されるカスタム CATrust.jks は排他的で追加的ではないため、SSL エラーを受け取ります。

カスタムトラストストアを提供する方法はありますか? そのトラストストア内に証明書が見つからない場合、サーバー/アプリケーションはフォールバックして、cacerts (または二次トラストストア) 内で証明書を見つけようとしますか?

これまでのところ、最初の読み物や他の投​​稿とは異なり、すべての CA 証明書が存在する唯一の trustStore を持つという情報が語られています。

4

1 に答える 1

6

展開の一部として、デフォルトのコピーを作成し、cacerts独自のキーストアの内容をそこにインポートできます (またはその逆)。

cp /path/to/cacerts merged.jks
keytool -importkeystore -srckeystore /SSL/CATrust.jks -destkeystore merged.jks

同じエイリアス名を使用することは避けたほうがよいでしょう (keytool -importkeystore特にこれがスクリプトの一部である必要がある場合は、詳細についてはオプションを確認してください)。

于 2012-11-07T02:51:50.017 に答える