Visual Studio 调试 SQL Server 连接字符串 - “SSL 提供程序,错误 0 - 证书链由不受信任的机构颁发”

问题描述 投票:0回答:1

我最近擦拭了我的笔记本电脑并重新安装了所有内容,包括 Visual Studio。这样做之后,我的 Intranet Web 应用程序的连接字符串(连接到本地 SQL Server DB)不再在调试中工作...

<add name="Company Database" connectionString="Data Source=Server\Instance;Initial Catalog=&quot;DBName&quot;;Persist Security Info=True;User ID=User;Password=Pass" providerName="System.Data.SqlClient" />

部署到服务器时它工作正常,但是当我尝试在调试中运行该应用程序时,我收到错误“SSL 提供程序,错误 0 - 证书链是由不受信任的机构颁发的”。我发现与此错误匹配的帖子通常建议使用(对于面向外部的应用程序要小心)加密 = false 或 TrustServerCertificate = true。当我尝试这些时,文本带有绿色下划线,并且工具提示显示“不允许加密属性”。已尝试将“System.Data.SQLClient”更新为“Microsoft.Data.SQLClient”,但这似乎没有任何区别。 有人可以帮忙吗? 谢谢

sql connection-string
1个回答
0
投票

您遇到的问题可能是因为您的计算机或 Visual Studio 不信任 SQL Server 的 SSL 证书。 以下是几个可能的解决方案:

解决方案1:考虑“TrustServerCertificate=true”没有解决 问题,您可能需要尝试将“encrypt=false”添加到您的 连接字符串。这告诉 SQL Server 不要加密 通信,可以避免 SSL 错误配置。

解决方案2: 您尝试连接的 SQL Server 可能正在使用自签名 SSL 证书。如果在您的项目上下文中可以接受,请考虑让 SQL Server 使用来自知名、值得信赖的证书颁发机构的证书。

解决方案3: 考虑将 SQL Server 的 SSL 证书导入到计算机的受信任根证书存储中。这应该会让您的机器信任 SSL 证书。

请记住谨慎行事,并确保对安全设置的任何更改都符合您的安全要求。

© www.soinside.com 2019 - 2024. All rights reserved.