【发布时间】:2014-11-17 21:00:53
【问题描述】:
我目前正在使用 htmlunit 来模拟需要安装 ssl 客户端证书(https 连接)的网页的报废。此证书已成功安装在我的 windows 操作系统中。通过网络浏览器(chrome 和 IE)访问给定网页时,会提示选择将使用的个人证书。我想访问 Windows 证书存储,最好是这个个人证书来验证并创建与我的 htmlunit 客户端的成功连接。
我已经设法使用 Windows-MY 研究 SunMSCAPI 以读取存储,如下面的代码所示。
Provider provider = Security.getProvider("SunMSCAPI");
KeyStore store = KeyStore.getInstance("Windows-MY", provider);
store.load(null, null);
Enumeration<?> aliases = store.aliases();
while (aliases.hasMoreElements()) {
String alias = aliases.nextElement().toString();
if (alias.equals("mypersonalcert")) {
Certificate[] signerKey = (Certificate[]) store
.getCertificateChain(alias);
Object entry = store.getKey(alias, null);
System.out
.println("cert aquired! got it");
}
}
如何成功地将它集成到我的 htmlunit webconnection 和 web 客户端实例以进行连接?提前致谢。
【问题讨论】:
标签: java ssl ssl-certificate htmlunit unit-testing