ASP.NET Core 7 MVC向数据库传数据时SSL证书信任错误求助
ASP.NET Core 7 MVC 数据库SSL证书信任问题解决方案
错误信息
SSL Provider: The certificate chain was issued by an authority which is not trusted.
解决步骤
确认连接字符串配置
确保TrustServerCertificate=True参数正确嵌入连接字符串,且无拼写或格式错误,示例:"ConnectionStrings": { "DefaultConnection": "Server=YOUR_SERVER_NAME;Database=YOUR_DB_NAME;User Id=YOUR_USER;Password=YOUR_PASSWORD;TrustServerCertificate=True;" }检查appsettings.json中配置是否被其他环境配置(如appsettings.Development.json)覆盖。
信任SQL Server证书
若SQL Server使用自签名证书,需手动将其导入本地受信任根证书存储:- 在SSMS中右键数据库实例 → 属性 → 安全性 → 点击“查看证书”,导出证书为.cer格式
- 双击导出的证书 → 安装证书 → 选择“本地计算机” → 选择“将所有证书放入下列存储” → 浏览选择“受信任的根证书颁发机构” → 完成安装
- 重启SQL Server服务和应用程序
更新SQL Client驱动
在NuGet包管理器中,将Microsoft.Data.SqlClient(或System.Data.SqlClient)更新至最新稳定版本,旧版本可能存在参数兼容问题。检查SQL Server强制加密设置
打开SQL Server配置管理器:- 定位到SQL Server网络配置 → 目标实例的协议
- 右键协议 → 属性 → 标志选项卡,将“强制加密”设置为“否”(仅建议开发环境临时测试)
- 重启SQL Server服务后再次尝试连接
验证运行环境证书权限
若部署到IIS,确保应用池身份账户有权限访问证书存储;开发环境下,确认当前登录用户的证书存储已信任目标证书。
内容的提问来源于stack exchange,提问作者Inf
相关产品推荐
相关产品推荐

