CertificateRequest メッセージを介した SSL ハンドシェイク中に、Weblogic/Java がサーバー (IIS サーバー) によって要求されたクライアント証明書を送信しない理由を理解できません。
SOの他のすべての質問/回答をすでに確認して試しました: Javaは相互SSLのクライアント証明書を提供していませんか? と同様です。
証明書エントリが 1 つだけの Identity.jks というカスタム キーストアを作成し、適切な設定を行うために WL ガイド (およびインターネットで見つけることができるその他すべて) に従いました。
SSL ハンドシェイクのデバッグ ログは次のとおりです。
*** CertificateRequest
Cert Types: RSA, DSS, ECDSA
Supported Signature Algorithms: SHA512withRSA, SHA512withECDSA, SHA256withRSA, SHA384withRSA, SHA1withRSA, SHA256withECDSA, SHA384withECDSA, SHA1withECDSA, SHA1withDSA
Cert Authorities:
<Empty>
*** ServerHelloDone
Warning: no suitable certificate found - continuing without client authentication
*** Certificate chain
<Empty>
ご覧のとおり、サーバーはCertificateRequest
メッセージを送信しますが、何らかの理由Cert Authorities
でEmpty
. この場合、クライアント (Weblogic) は証明書を送信しません。ご覧のとおり、開発者による次のような警告メッセージがあります。
no suitable certificate found - continuing without client authentication
SoapUI
Weblogic の代わりに使用してサーバーと通信すると、ハンドシェイクは成功します。SoapUI は、Identity.jks
キーストアに含まれる証明書を送信します。
WeblogicSoapUI
がサーバーからCert Authorities:
<Empty>
.
そのエイリアスでそのキーのみを使用するようにweblogicをセットアップしたので、それを送信することを期待しています...
Weblogic が一致するクライアント証明書を見つけるために使用する基準を知っている人はいますか?
ログの解釈は正しいですか?
どんなアイデア/ヘルプも大歓迎です。