如何修复由于证书问题导致的 SQL Server 2019 连接错误

bed*_*ock 25 sql-server connection certificate

我正在使用 .NET 控制台应用程序来测试 SQL Server 2019 数据库连接并收到以下错误消息:

已成功与服务器建立连接,但登录过程中出现错误。(提供程序:SSL 提供程序,错误:0 - 证书链是由不受信任的机构颁发的。)

用户 ID 和密码有效。C# 代码未使用任何加密。我没有在 SQL Server 配置中配置任何证书。

  1. SQL Server 2019 是否需要证书?
  2. 我可以从 SQL Server 获取自行生成的证书吗?
  3. 如果没有可用的自行生成的证书,我可以在哪里免费获得有效的证书?

gpi*_*kas 27

为了改进答案,让我总结一下评论:

虽然在连接字符串中设置TrustServerCertificate=True或是一种快速修复方法,但解决此问题的推荐方法是从受信任的 CA 为 SQL Server 提供正确的证书。Encrypt=false

要为单个 SQL Server 实例安装证书():

  1. 在 SQL Server 配置管理器的控制台窗格中,展开 SQL Server 网络配置。

  2. 右键单击<实例名称>的协议,然后选择属性。

  3. 选择“证书”选项卡,然后选择“导入”。

  4. 选择浏览,然后选择证书文件。

  5. 选择“下一步”以验证证书。如果没有错误,选择“下一步”将证书导入到本地实例。

  • 但是对于第4步,我们从哪里获取证书文件呢? (4认同)

tec*_*n23 7

对我来说这成功了

  • 在 Visual Studio 中,打开服务器资源管理器窗格。
  • 右键单击数据连接(数据库)并选择“修改连接”。
  • 选中“信任服务器证书”框。

修改连接-信任服务器证书

注意:这在生产环境中可能并不可取,但我只是测试本地非生产应用程序,所以它为我解决了问题。