从提供程序读取数据时发生错误。根据验证程序,远程证书无效

Posted

技术标签:

【中文标题】从提供程序读取数据时发生错误。根据验证程序,远程证书无效【英文标题】:An error happened while reading data from the provider. The remote certificate is invalid according to the validation procedure 【发布时间】:2019-05-24 02:00:21 【问题描述】:

我正在尝试将 AWS EC2 实例上的 Postgres 数据库连接到 Microsoft PowerBI。我尝试了互联网上可用的各种方法,但它显示了上述错误。虽然我已经在 AWS RDS 上完成了这个连接。我安装了所需的依赖项 (GAC) 和 PowerBI 所需的所有证书。

【问题讨论】:

我也害怕这个错误 你找到解决办法了吗@YashPokar 【参考方案1】:

添加到@chirag sanghvi 答案

您可能会遇到错误 ERROR: character 0xefbfbd of encoding "UTF8" has no equivalent in "WIN1252"

因为您的数据库是用 UTF-8 编码的

安装这个驱动

https://github.com/npgsql/npgsql/releases/tag/v4.1.3

然后在您的连接字符串中使用 Unicode 驱动程序

Driver=PostgreSQL Unicode(x64);Server=;Port=5432;Database=

【讨论】:

【参考方案2】:

以下对我有用:

File / Options and settings / Data source settings

然后选择数据源

Edit Permissions 并取消选中encrypt connections

【讨论】:

感谢您的解决方案!幸运的是,*** 上有一些 PowerBI 解决方案,因为我永远无法在 PowerBI 论坛上获得任何帮助 对我不起作用。我的数据库是 Heroku 的 Postgres 数据库。我可以从 DNS 中看到它是一个 AWS 数据库。【参考方案3】:

浪费了两个小时,所以写完整。

下载并安装 postgresql ODBC 驱动程序

Goto below URL

网址:https://www.postgresql.org/ftp/odbc/versions/msi/

Scroll down
Click on a zip file to download  (i took psqlodbc_12_00_0000-x64.zip)
Unzip file
Run the .MSI file
   Take all defaults given and install it

创建 ODBC 数据源

使用下面的方法找到 ODBC 数据源(我选择了“ODBC 数据源(64 位)”):

Windows > Start button > search for "ODBC Data Sources"
User DSN > PostgreSQL ANSI(x64) > Finish
Give details
  Data source name : PostgreSQL30                ###
  DB name *** , server, port, username, pwd
  SSL mode = disabled (default)
click on Test button
  "Connection successful" message will come, else re-check details above.

我们现在有了一个新用户 DS,并创建了 PostgreSQL30

下载 Power BI

Windows > Start button > Microsoft Store
Search for "Power BI Desktop" > Get/Install

来源:https://docs.microsoft.com/en-us/power-bi/desktop-get-the-desktop#download-power-bi-desktop

运行 Power BI

Get Data (On the left)
Search for "odbc" > Select "ODBC" on right pane > Connect
  DSN > PostgreSQL30 ( --- this is same as above ### --- )
  OK

"Navigator" dialog is shown, with "Display Options"

ODBC ... PostgreSQL30
> DB name   ( --- this is same as above *** --- )
  Open the > button on left of DB name
  select the tables
  click "Load" button 

完成。 您已成功将 Power BI (PBI) 连接到您的 postgres 或其他数据库。

希望这会有所帮助。

【讨论】:

【参考方案4】:

AWS 看这个案例https://community.powerbi.com/t5/Desktop/The-remote-certificate-is-invalid-according-to-the-validation/td-p/531475

对于非 AWS 问题,您应该根据 Npgsql 文档 https://www.npgsql.org/doc/security.html 配置 SSL,或者您可以在 postgresql 服务器上的 postgresql.conf 中禁用 SSL 选项。

【讨论】:

【参考方案5】:

我遇到了同样的问题,很遗憾我没有找到解决方案。但我找到了替代方案。

您可以使用 ODBC 连接来连接 PostgreSQL。

为 PostgreSQL 设置 ODBC:https://www.postgresql.org/ftp/odbc/versions/msi/

安装后,选择“获取数据”下的ODBC连接

在数据源名称下选择“无”,然后 在连接字符串下添加以下语句:

Driver=PostgreSQL ANSI(x64);Server=<host>;Port=5432;Database=<dbname>

点击“下一步”

输入用户名和密码,点击连接。 如果凭据正确,您将看到数据库中可用的表列表。

请按照此参考了解详细说明: http://niftit.com/connecting-power-bi-to-postgresql/

【讨论】:

非常感谢奇拉格。我真的很害怕并尝试了很多方法。 您可能想使用“PostgreSQL Unicode”作为驱动程序,我们可以在connectionstrings.com/postgresql-odbc-driver-psqlodbc找到其他连接字符串选项

以上是关于从提供程序读取数据时发生错误。根据验证程序,远程证书无效的主要内容,如果未能解决你的问题,请参考以下文章

带有 SQLite 错误的实体框架:从商店提供者的数据读取器读取时发生错误

ASP.Net MVC 5 Sending Email 错误:根据验证程序,远程证书无效

win10远程桌面显示发生身份验证错误(代码:0x800706be)是怎么回事啊

在向服务器发送请求时发生传输级错误。 (provider: TCP 提供程序, error: 0 - 远程主机强迫关闭了一个现有的连接。)

在没有应用程序互联网的情况下启动时无法读取本地 Firebase 远程配置 plist

当 SMTP 服务器具有有效证书时,获取“根据验证程序,远程证书无效”