java安全问题页面需要客户端证书

时间:2011-01-26 23:50:51

标签: java certificate axis security webservice-client

我有证书。 pfx访问网络服务。

我按照this page

上列出的步骤操作

查看发送的xml是否已加密。

但服务器会给我回复消息:

The page requires a client certificate
.........
HTTP/1.1 403 Forbidden
.......
Server Microsoft-IIS/6.0

如果我安装了此证书(证书正确),我可以从浏览器中看到此服务器的定义。

此外,我必须使用用户名和密码来查看服务的定义。

在Trustor中,我有服务器证书。

我正在用java编程并使用轴,任何想法我为什么会收到此错误?

2 个答案:

答案 0 :(得分:0)

您需要将Axis客户端配置为包含传出请求的客户端证书。这与更常见的服务器证书不同。 This post 提供了有关在Java中设置客户端证书的详细信息:

答案 1 :(得分:0)

这是解决方案:

System.setProperty(“javax.net.ssl.keyStore”, “path/keystore.jks”);
System.setProperty(“javax.net.ssl.keyStorePassword”, “pass”);
System.setProperty(“javax.net.ssl.keyStoreType”, “PKCS12″);
System.setProperty(“javax.net.ssl.trustStore”, “path/trusstore.jks”);
System.setProperty(“javax.net.ssl.trustStorePassword”, “pass”);
System.setProperty(“com.sun.net.ssl.dhKeyExchangeFix”, “true”);