postgresql中SSL连接上的“HostName not verified error message”

时间:2018-05-03 09:26:09

标签: postgresql ssl ssl-certificate

我在Centos 7上创建了server.crtserver.keyroot.crt文件,并将其放在Windows中的C:\Users\xxxx\AppData\Roaming\postgresql文件夹中,因为我在Windows上运行postgresql服务器。现在,在使用SSL运行我的应用程序时,我收到错误

  

“无法验证主机名”

请帮助。

3 个答案:

答案 0 :(得分:4)

如果在仍然希望使用证书的同时不关心主机名验证,则可以使用附加参数sslmode=verify-ca作为连接参数或URL的一部分,以在保留证书验证的同时禁用主机名验证。

答案 1 :(得分:3)

要在没有服务器证书验证的情况下使用PostgreSQL JDBC驱动程序,请使用

sslfactory=org.postgresql.ssl.NonValidatingFactory

作为连接参数或作为the documentation中描述的URL的一部分。

答案 2 :(得分:3)

我正在使用JetBrains Data Grip访问Heroku上的Postgres数据库,并且在最新的JDBC驱动程序版本中遇到了相同的错误。这就是我解决问题的方式(使用此处提供的答案)。

在“高级”标签中设置以下内容:

ssl = true

sslmode = verify-ca

sslfactory = org.postgresql.ssl.NonValidatingFactory

enter image description here