跟浏览器是一样的,因为SOAP一般也适合附着在Web Server上的。
都分2种情况:
一种是客户端需要拥有服务端的证书,(比如IE会弹出个警告框问你是否信任服务端的证书)
这是比较常见的情况,我们上的大多数SSL网站都是这种情况。
还有一种情况就是服务端也要拥有客户端的证书以验证客户端的合法性,
所谓相互信任。这种SSL站点一般都是特殊的专业或内部站点,只对登记的合法用户开放。
比如有些金融站点。浏览这种站点时,你的浏览器还会弹出一个框,让你指定合适的
证书以便服务端验证。
SOAP客户端也是如此。这取决于服务端的设置。

解决方案 »

  1.   

    楼上说差不多了,基本就是这个样子
    服务端如果设置成忽略客户端证书,那么客户端就可以没有证书
    另外,如果设置成支持客户端证书映射的话还可以通过客户端证书来控制访问资源,有点类似windows用户的样子
    可惜不能贴图,不然就清楚多了
      

  2.   

    但好像并非双向信任的意思。
    我是参照 http://ws.apache.org/soap/docs/install/FAQ_Tomcat_SOAP_SSL.html 配置的:Generate Client and Server Certificates for SSL communication. 
    1. Generate a Server Key and Certificate 
    2. Export the Server Certificate 
    3. Generate a Client Key and Certificate 
    4. Export the Client Certificate 
    5. Import the Certificates into the Keystores 
    能否解释一下3-5步骤的意思。谢谢
      

  3.   

    原文说的不是很清楚,
    第3步是生成客户端的keystore
    第4步是导出客户端的证书。这一步应该是可选的,如果服务端不需要验证客户端,就不需要这个。
    第5步是导入证书。一般只要客户端导入服务端证书。如果需要验证客户端。那么服务端也要导入客户端证书。这时就需要第4步了。
      

  4.   

    我有软件可以管理及生成证书(根证、服务器证书、客户端证书);
    目前支持apache、tomcat、esin、jboss、orion等WEB服务器及应用服务器;不过软件是需要Money的,
    如果只需要几张证书作测试用的话,我倒可以给你几张。
    [email protected]