0

WCF クライアントから、リクエストを Datapower サービスに問題なく送信できます。データパワーが応答を送信しようとすると、次のエラーが発生します。

11:41:55 ssl エラー 224703 0x806000ca valcred (xx.xxxxxx.xx.xx_xxx): SSL プロキシ プロファイル 'xx.xxxxxx.xx.xx_sslpp': 接続エラー: ピアが証明書を送信しませんでした

クライアントとサーバーには一致する証明書があり、その証明書を適切なポートにバインドし、証明書をクライアントに添付する「SetCertificate」呼び出しを行います。トレース ログを介して、サーバー側で応答トラフィックがまったく表示されません。データパワー/クライアント側の人々は、サービスがハンドシェイク後に証明書を提示していないと言っていますが、私はそれを可視化する必要があります.

どんな提案でも大歓迎です。

4

1 に答える 1

2

私は常にこの問題に直面しており、データパワーと Java Web サービスの開発者です。

このシナリオでは、datapower がサーバーとして機能していると想定しています。

  1. ピアが証明書を送信していないことを datapower がログに記録する場合、WCF がネットワーク全体で datapower と共有しているパブリック証明書を送信していないことを意味します。
  2. これは、datapower でパケット キャプチャをオンにして送信することで確認できます。
  3. 多くの場合、人々は公開証明書を変更し始めますが、それを行わずに、クライアントが問題を認識していない理由を確認することに集中することをお勧めします。
  4. クライアントが Java であるクライアント側のキーストアには、トラストストアにクライアント公開鍵と datapower 公開鍵の両方が含まれている必要があります。

サーバー証明書をキーストアに配置するための keytool コマンドcacerts.jks:

keytool -import -v -trustcacerts -alias mykey -keypass changeit -file mykey.cer -keystore cacerts.jks -storepass changeit
于 2012-12-04T22:23:22.800 に答える