gpt4 book ai didi

java - JDBC 连接池 SSL 错误 PKIX 构建失败

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:21:40 24 4
gpt4 key购买 nike

这是使用最新的 Glassfish (4.1)、针对 Postgres 9.4 的最新 Postgres 驱动程序 (9.3-1102 JDBC 41) 和最新的 Java (1.8.0_31-b13)。

这也是使用商业 CA 证书,我检查了 $JAVA_HOME/jre/lib/security/cacerts 中是否存在 CA 根。为了好的措施,我还添加了中间证书。

我还验证了 Root 和 intermediate 位于 glassfish domains/domain1/config/cacerts.jks

我收到的错误信息是:

An error has occured. Ping Connection Pool failed for XXX. Connection could not be allocated because: SSL error: sun.security.validator.ValidatorException: PKIX path building failed sun.security.provider.SunCertPathBuilderException: unable to find valid certification path to requested target.

Postgresql 日志显示如下:

LOG:  could not accept SSL connection: sslv3 alert certificate unknown

Glassfish server.log 只显示上述错误。

如果我设置

sslfactory=org.postgresql.ssl.NonValidatingFactory

那么 ping 当然可以正常工作。但这对于生产目的来说显然是完全和完全不能接受的,因为毫无疑问,针对 MITM 攻击的保护是强制性的!

最佳答案

只是为了回答我自己的问题,我做的一切都是对的。我唯一错过的是检查是否从正确的文件 (/etc/postgresql/9.4/main/postgresql.conf) 读取了 Postgres SSL 证书。

我现在可以Ping成功了

关于java - JDBC 连接池 SSL 错误 PKIX 构建失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28256401/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com