X.509安全Web服务的Java客户端

时间:2011-11-11 08:55:16

标签: java web-services security client x509certificate

我有远程网络服务,使用X.509证书保护 我生成了Web服务客户端的东西(使用jax-ws),但是需要配置是否用于证书的使用 我该怎么办? 我想我应该在我的本地可信密钥库中注册证书,并设置如下:

System.setProperty("javax.net.ssl.keyStore", keyStore);
System.setProperty("javax.net.ssl.keyStoreType", "JKS");
System.setProperty("javax.net.ssl.keyStorePassword", keyStorePassword);
System.setProperty("javax.net.ssl.trustStore", trustStore);
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);

但目前尚不清楚哪些数据应作为参数提供 请帮忙。
感谢。

1 个答案:

答案 0 :(得分:3)

密钥库属性定义了向服务器标识您的证书:

System.setProperty("javax.net.ssl.keyStore", keyStore);

这是一个带有x509证书的java密钥库。您可以使用tha java program keytool创建它。

System.setProperty("javax.net.ssl.trustStore", trustStore);

这是一个java密钥库,其中包含用于标识网站的证书。这仅供您的Web服务软件使用,以确保您真正与正确的网站通信。

System.setProperty("javax.net.ssl.keyStoreType", "JKS"); System.setProperty("javax.net.ssl.trustStoreType", "JKS");

这只是指定javax.net.ssl.keyStore和javax.net.ssl.trustStore的格式是java密钥库。

System.setProperty("javax.net.ssl.keyStorePassword", keyStorePassword); System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);

这是用于在创建Java密钥库时对其进行加密的密码。