org.springframework.web.client.resourceaccessexception:获取“https://[myendpoint]”请求时出现i/o错误

9wbgstp7  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(922)

pkix路径生成失败:sun.security.provider.certpath.suncertpathbuilderexception:找不到请求目标的有效证书路径;
我正在处理来自windows开发机器的rest调用。
我尝试过按照“c:\program files(x86)\java\jre1.8.0\U 271\lib\security\cacerts”中的java密钥库中添加证书的指导原则进行操作
事实上,我在c:\ProgramFiles\java\jre1.8.0\u271\lib\security\cacerts中有另一个java目录
我已尝试将证书存储在两个密钥库中。
在这个站点上,公开了一个rest服务,我保存了来自googlechromewebrowser的证书


…并在“详细信息”选项卡下单击“复制到文件”按钮。我使用证书导出向导并选择第一个“der encoded binary x.509(.cer)”选项。
我给证书起了个名字“mycert.cer”。导出后,我使用keytool命令并使用以下命令将其添加到java密钥库:

keytool -import -noprompt -trustcacerts -alias mycert -file "d:\MyCertificates\mycert.cer" -keystore "C:\Program Files (x86)\Java\jre1.8.0_271\lib\security\cacerts" -storepass changeit

我得到一个确认,它被储存了。
我试图调用我的rest调用,却得到了相同的错误。有人能澄清一下,我还需要做些什么吗?我错过了什么?
我在我的开发人员机器上以管理模式(localadministrator)完成所有这些工作。

sigwle7e

sigwle7e1#

如何调用api?是Spring吗 RestTemplate 或者其他客户?
请提供您的 RestTemplate 配置。
检查叶级证书的有效性
检查cname是否与端点匹配如果不匹配,则可能需要禁用主机名检查
尝试启用ssl日志记录, javax.net.debug=ssl/all

相关问题