【问题标题】:Excel2016: Cannot query PostgresSQL database: Server certificate not acceptedExcel 2016:无法查询 PostgreSQL 数据库:不接受服务器证书
【发布时间】:2019-05-04 19:14:31
【问题描述】:

我想将一些数据从 postgresSQL 表导入 Excel2016。我通过单击“新查询”并选择从数据库-> 从 PostgresSQL 数据库尝试过:

然后我收到以下错误:

详细信息:“TlsClientStream.ClientAlertException:CertificateUnknown:服务器证书未被接受。链状态:证书链已处理,但在信任提供者不信任的根证书中终止。 .证书中不存在指定的主机名。 在 TlsClientStream.TlsClientStream.ParseCertificateMessage(Byte[] buf, Int32& pos) 在 TlsClientStream.TlsClientStream.TraverseHandshakeMessages() 在 TlsClientStream.TlsClientStream.GetInitialHandshakeMessages(布尔 allowApplicationData) 在 TlsClientStream.TlsClientStream.PerformInitialHandshake(String hostName, X509CertificateCollection clientCertificates, RemoteCertificateValidationCallback remoteCertificateValidationCallback, Boolean checkCertificateRevocation)"

关于如何解决这个问题的任何建议?提前非常感谢您!

【问题讨论】:

  • 您希望在此操作中使用证书吗? PG服务器是本地的吗?你能发布 pg_hba.conf 的内容吗(如果适当,IP 地址会被审查)?

标签: excel postgresql certificate


【解决方案1】:

我终于找到了解决我的问题的方法。 你可以做的是:

  1. here安装当前的postgresql驱动

  2. 按照video的指示进行操作

有了这个,您可以通过 ODBC 连接到您的 postgreSQL 数据库。

【讨论】:

    【解决方案2】:

    此错误表示正在与 PostgreSQL 数据库建立连接,其中服务器的证书无法由建立连接的客户端验证。此错误仅在 Excel 用于连接 PostgreSQL 的库中的“信任服务器证书”设置为 FALSE 时发生 (npgsql)。

    可能有几种方法可以解决这个问题,按照我建议尝试的顺序:

    1. 如果 Excel 中隐藏了一个选项(可能在高级选项或类似选项下)将“信任服务器证书”参数设置为 True,那么您的连接将开始工作。如果它允许你指定一个完整的连接字符串,那么这也可以在连接字符串中完成。

    2. 数据库应该在 db 的 postgresql.conf 文件中列出的 SSL 证书中具有公钥。如果您(或您的数据库管理员)可以获得该公钥并将其添加到您的计算机(说明会因您的操作系统而异)。

    【讨论】:

      猜你喜欢
      • 2021-10-03
      • 2015-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-14
      • 1970-01-01
      • 2017-09-27
      • 2015-12-16
      相关资源
      最近更新 更多