我有远程网络服务,使用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);
但目前尚不清楚哪些数据应作为参数提供
请帮忙。
感谢。
答案 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密钥库时对其进行加密的密码。