默认情况下,Java使用HttpsURLConnection信任哪些证书?

时间:2012-11-24 11:09:28

标签: java https

如果我打开HttpsURLConnection,打开java.net.URL连接,比如https://www.google.com/,Java如何决定是否信任证书链?

是否有某种默认值硬编码到API中?

3 个答案:

答案 0 :(得分:3)

出于开发目的,您可以将自签名证书添加到Java可信X509证书库,例如:

cd PathToJRE/lib/security
sudo keytool -import -keystore cacerts -alias anAlias -file aCertificat

默认密码是changeIt

但是建议不要进行生产,否则会出现错误定义的证书等错误。您可以创建一些处理TrustManager和HostnameVerifier的实用程序类

答案 1 :(得分:1)

带有Java安装的 Truststore 。您可以使用Oracle的 keytool 来查询已安装的证书(我认为密码为空,或者是'changeit')。

答案 2 :(得分:0)

JRE的安全性文件夹中有一个文件cacert,其中包含默认证书