1

背景:
クライアントが自身を認証する (クライアント証明書を介して) プロジェクトに取り組んでいます。最初にクライアント証明書を認証してからそのアプリを起動するサードパーティ アプリを起動しようとしています。
Java と SSL hanshake を使用しており、クライアント サーバーは Weblogic 10.x です。クライアント証明書は PKCS12 形式です (これを変更することはできません)
。これは、証明書を提示するためのコードです。

System.setProperty("javax.net.ssl.keyStore","MyPath/cert.pfx");
System.setProperty("javax.net.ssl.keyStorePassword","MyPwd");
System.setProperty("javax.net.ssl.keyStoreType","PKCS12");
url.openConnection();

これで、これらすべてがスタンドアロンからかなりうまく機能します。問題は、これを weblogic に配置したときに始まります。動作する場合もあれば、「クライアント証明書が存在しません」(http 403.7) が返される場合もあります。さまざまな組み合わせ (weblogic コンソールでのカスタム キーストアの構成を含む) を試しましたが、何も機能しないようです。weblogic が SSL 設定を完全に無視するのはなぜでしょうか (存在しないファイルにキーストアを設定してもエラーは発生しません)。SSL の System.setProperty は weblogic では役に立たないようです。

4

2 に答える 2

1

ついに解決策を見つけました!上記のようにJavaを介して行われる場合、Weblogicはキーストア構成をオーバーライドするようです。私にとってうまくいったのは、Webロジックの起動時にJVMレベルでSSL設定を構成することでした。
機能させるために、weblogic の開始スクリプトに次の Java オプションを追加しました。

-Djavax.net.ssl.keyStore=MyPath/cert.pfx
-Djavax.net.ssl.keyStoreType=MyPwd
-Djavax.net.ssl.keyStorePassword=PKCS12

それ以来、再起動されたWebロジックとSSLはうまく機能しています:)

于 2013-02-28T07:37:50.767 に答える