4

httpsを介してサーバー(「A」)に接続するアプレットを使用した動作デモがあります。サーバーの証明書チェーンは、JKSトラストストア(myTrustManagerFactory.init(mytrustStore.jks))を介してアプレットによってロードされます。正常に動作します。

ここで、httpsを介して別のサーバー(「B」)に接続するためにもこのアプレットが必要です。サーバーの証明書は、自己署名CAによって署名されています。したがって、この自己署名CAをアプレットTrustManagerFactoryに渡す必要があります。

  • サーバー「A」に使用されているものと同じJKSトラストに入れることはできますか?その場合、2番目のエイリアスを使用してこの自己署名CAを保存する必要がありますか?それを試しましたが、サーバー「B」に接続するとエラーが発生します。TrustManagerFactoryにサーバー「B」エイリアスを指定する方法はありますか?

  • 2番目のサーバーを呼び出す前に2番目のJKS、またはSSLコンテキストを「リセット」する必要がありますか?

助けてくれてありがとう、
ロドルフ

4

1 に答える 1

1

自分で解決策を見つけました:
エラーメッセージ「証明書チェーンエラー」は、トラストストアのチェーンの問題ではなく、サーバーのチェーンの問題を反映しています。

したがって、それが役立つ場合は、トラストストアに複数の (一連の) 証明書をロードして、https の複数のサーバーを信頼しても問題ありません。サーバーごとに 1 つのエイリアス (エイリアス名は関係ありません) と、このサーバーを信頼するために必要な (一連の) 証明書が必要です。

別のサーバーに通信を切り替えるときに、何もリセットする必要はありません。サーバーの証明書のすべてのチェーンを単一の「myTrustManagerFactory.init(mytrustStore.jks)」メソッドでロードするだけです。

于 2011-02-01T22:51:54.940 に答える