JAX-RPC 実装を使用してクライアント証明書を Web サービスに渡そうとしています。(Web サービスは rpc エンコード スタイルです)。
これまでのところ、システム プロパティを設定することでそれを行うことができます。
System.setProperty("javax.net.ssl.keyStore", "client_cert.p12");
System.setProperty("javax.net.ssl.keyStorePassword", "newpasswd");
System.setProperty("javax.net.ssl.keyStoreType", "PKCS12");
次に、Web サービスを構築して呼び出します。
CertificateInfoPortType svc = new CertificateInfoLocator().getCertificateInfo(new URL(SERVICE_URL));
svc.methodToBeInvoked();
System.setProperty
しかし、これは EJB の内部で使用されるため、すべての Web サービス クライアントに影響するため、JVM 全体のパラメーターを を使用して設定したくありません。
クライアント証明書をパラメーターとして渡す方法はありますか? 私が読むことができたものから、カスタムを使用する必要がありますKeyManager
が、カスタム KeyManager をクライアントに設定する方法がわかりません。
ありがとう!