You need to enable JavaScript to run this app. AWS EC2上Spring Boot应用报net::ERR_CERT_AUTHORITY_INVALID怎么办
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2上Spring Boot应用报net::ERR_CERT_AUTHORITY_INVALID怎么办

问题核心解答

你当前执行的证书导入操作,从适用场景上就和Chrome弹出的net::ERR_CERT_AUTHORITY_INVALID报错完全不匹配,不存在“导完JRE信任库就自动解决浏览器证书信任问题”的逻辑。

核心认知澄清

  • JRE自带的cacerts信任库,作用是给运行在JVM上的Java程序做出站HTTPS请求时的证书校验,既不会修改Spring Boot对外提供的HTTPS证书内容,也不会同步到你本地运行Chrome的设备上供浏览器做信任判断。
  • 不要混淆两类证书存储的作用:cacerts是Java程序用来信任外部服务证书的信任存储,不是存储自身对外提供服务的证书的密钥存储,二者完全独立。
  • 你完成导入操作后验证到的tomcat条目,只会影响Spring Boot作为客户端发起HTTPS调用时的信任逻辑,和当前Chrome弹出的信任报错没有任何关联。

需要补充排查/执行的操作

1. 优先检查服务端返回的证书链完整性

该类报错最常见的根因是服务端没有配置完整的证书链,浏览器拿到的证书无法追溯到受信任的根CA:

  • 先在EC2实例上执行命令检查服务实际返回的证书链:openssl s_client -connect <你的访问域名/公网IP>:<HTTPS端口> -showcerts
  • 如果返回内容里只包含单张服务器证书、缺失对应签发的中间CA证书,需要把「服务器证书+全量中间CA证书」按顺序拼接后(服务器证书放最前面,后续依次拼接各级中间CA),重新配置到Spring Boot的SSL密钥库中,重启应用后再测试。
  • 确认证书的SAN字段必须包含你访问时使用的域名/公网IP,否则即使证书链完整,Chrome也会判定证书主体不匹配,触发信任报错。

2. 根据证书类型匹配对应的信任操作

  • 如果你的证书是公开受信CA签发的:只要确认证书链完整、访问地址匹配证书绑定的SAN字段,Chrome本身就会默认信任,不需要做任何额外的证书导入操作。
  • 如果你的证书是自签/内部私有CA签发的:需要把对应的根CA证书,导入到你本地运行Chrome的设备的系统受信任根证书存储中,重启Chrome后才能正常访问,在EC2服务器上导入证书到JRE信任库的操作,对解决这个场景的报错完全没有帮助。

内容的提问来源于stack exchange,提问作者Henrique Schmitt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.10 01:45:00