WCF相互证书加密标签

时间:2012-03-02 15:32:01

标签: wcf wcf-binding wcf-security

我正在开发一个将由Java应用程序(通过DataPower)使用的WCF服务,并且我正在使用以下绑定。

<customBinding>
  <binding name="InteropCertificateBindingG">
    <transactionFlow />
    <security
      authenticationMode="MutualCertificate"
      defaultAlgorithmSuite="TripleDesRsa15"
      messageSecurityVersion="WSSecurity10WSTrust13WSSecureConversation13WSSecurityPolicy12BasicSecurityProfile10"
      includeTimestamp ="true"
      messageProtectionOrder="SignBeforeEncrypt"
      securityHeaderLayout="Strict"/>          
    <textMessageEncoding />
    <httpsTransport />
  </binding>
</customBinding>

如果我们只签名,并且只接收签名,则该消息一切正常。

但是当我们定义加密和签名的合同时,客户端发送加密和签名的消息我,wcf服务接受消息,但客户端在读取响应时收到错误

错误是这样的:

  

事务在步骤2中中止。哈希值不匹配

我怎么知道哪些标签正在加密/签名?

我是否应该使用MutualCertificate或MutualCertificateDuplex authenticationMode,因为我使用的是AsymmetricSecurityBindingElement(由wssecurity10消息版本定义)?

我们如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

问题是因为java客户端使用一个证书对请求进行签名,并期望收到使用其他证书加密的响应

相关问题