[英]“HostName not verified error message” on SSL connection in postgresql
我在 Centos 7 上创建了server.crt
、 server.key
和root.crt
文件,并将它们放在root.crt
的C:\\Users\\xxxx\\AppData\\Roaming\\postgresql
文件夹中,因为我正在 Windows 上运行 postgresql 服务器。 现在使用 SSL 运行我的应用程序,我收到错误
“无法验证主机名”
请任何帮助。
我正在使用 JetBrains Data Grip 访问 Heroku 上的 Postgres dbs,并在最新的 JDBC 驱动程序版本中遇到相同的错误。 这就是我解决它的方法(使用此处提供的答案)。
在高级选项卡中设置以下内容:
ssl=真
sslmode=需要
sslfactory=org.postgresql.ssl.NonValidatingFactory
(我将sslmode
值从verify-ca
更新为required
因为它现在可以与 Heroku Postgres 一起使用)
如果您不关心主机名验证但仍想使用证书,则可以使用附加参数sslmode=verify-ca
作为连接参数或作为 URL 的一部分来禁用主机名验证,同时保留证书验证。
要在没有服务器证书验证的情况下使用 PostgreSQL JDBC 驱动程序,请使用
sslfactory=org.postgresql.ssl.NonValidatingFactory
作为连接参数或作为文档中描述的 URL 的一部分。
对于更高版本的 JDBC 驱动程序,您必须指定
sslmode=require
因为默认值verify-full
意味着客户端要检查服务器的证书和身份。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.