java访问https地址 PKIX path building failed

一、故障说明

Java在请求某些不受信任的https网站时会报:PKIX path building failed。原因是网站的证书https协议用的自签证书,不是官方证书颁发机构授权的证书。在https 加密过程中,证书验证没通过。

 

二、解决办法

有两种解决办法:

1、导入证书到本地证书库

2、信任所有SSL证书,绕开安全协议处理

最好的解决办法或许是信任所有SSL证书,因为某些时候不能每次都手动的导入证书非常麻烦。

1. 导入证书到本地证书库

下载cert证书

点击网站https协议

 

显示证书

 

点击“证书无效”,打开证书

提示“此CA根目录证书”不受信任。要启用信任,请将该证书安装到“受信任的根证书颁发机构”存储区。

 

切换到“详细信息”标签

 

点击“复制到文件”按钮

 

选择导出格式:一般选择Base64

选择证书存放路径

 

保存证书

 

 

点击完成,导出证书成功

2. 导入证书到jdk信任证书store

将下载好的.cer文件复制到 %JAVA_HOME%/jre/bin/目录下

使用管理员权限打开命令行

切换到cer文件路径

cd %JAVA_HOME%/jre/bin/

1)导入sonarqube证书

"%JAVA_HOME%\bin\keytool" -import -trustcacerts -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -storepass changeit -alias SONARQUBE_CERTIFICATE -import -file sonarqube.cer

2)查看sonarqube证书

keytool -list -keystore "%JAVA_HOME%/jre/lib/security/cacerts"  -storepass changeit

3)删除sonarqube证书

keytool -delete -alias SONARQUBE_CERTIFICATE  -keystore "%JAVA_HOME%/jre/lib/security/cacerts"  -storepass changeit

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
PKIX path building failedJava中的一个常见错误,它通常表示在建立PKIX路径时出现了问题。PKIX(Public Key Infrastructure X.509)是一种用于验证和建立数字证书链的标准协议。 要解决PKIX path building failed错误,可以尝试以下几种方法: 1. 检查证书链:首先,确保你的证书链是完整和正确的。检查证书是否过期、是否被吊销或是否存在其他问题。可以使用Java的keytool工具来检查证书。 2. 更新证书库:如果你的Java环境中的证书库已过时或缺少必要的根证书,可以尝试更新证书库。可以从可信任的证书颁发机构(CA)获取最新的根证书,并将其添加到Java的证书库中。 3. 禁用证书验证:在某些情况下,你可能希望暂时禁用证书验证以解决问题。但请注意,这会降低安全性。可以通过设置SSLContext来禁用证书验证,例如: ``` SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(null, new TrustManager[] { new X509TrustManager() { public void checkClientTrusted(X509Certificate[] chain, String authType) {} public void checkServerTrusted(X509Certificate[] chain, String authType) {} public X509Certificate[] getAcceptedIssuers() { return new X509Certificate[0]; } }}, new SecureRandom()); HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory()); ``` 请注意,禁用证书验证可能会导致安全风险,请在仔细评估后使用。 4. 检查网络连接:有时,PKIX path building failed错误可能是由于网络连接问题引起的。确保你的网络连接正常,并且可以访问远程服务器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明算科

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值