使用SqlClient填充@Html.DropDownListFor时遇SSL登录错误求助
解决SQL Server SSL连接"目标主体名称不正确"错误
针对你在读取美国州列表填充下拉框时遇到的SSL登录错误,以下是具体解决步骤:
1. 核对连接字符串的服务器名称
确保连接字符串中Data Source(或Server)字段的值,与SQL Server SSL证书上的主机名/完全限定域名完全一致。比如证书绑定的是sql-prod.example.com,就不能用192.168.1.100或localhost作为服务器地址。
2. 临时跳过SSL证书验证(测试场景)
如果只是临时排查问题,可以在连接字符串中添加TrustServerCertificate=true参数,绕过证书主体名称校验:
Server=your-sql-server;Database=your-db-name;User Id=db-user;Password=db-pass;TrustServerCertificate=true;
注意:该方法仅用于测试,生产环境禁用会带来安全风险,不建议长期使用。
3. 配置有效的SSL证书(生产环境)
- 登录SQL Server所在服务器,打开SQL Server配置管理器,在"SQL Server网络配置"中查看当前SSL证书绑定情况。
- 确保使用的SSL证书是由可信CA颁发的,且证书的**主体名称(Subject)或备用名称(SAN)**包含你连接时使用的服务器地址。
4. 检查新增代码的连接配置
确认读取州列表时使用的连接字符串,和之前表单正常工作时的连接字符串是否一致——可能新增的数据库操作代码误用了其他配置项,导致SSL连接验证失败。
内容的提问来源于stack exchange,提问作者smbbb
相关产品推荐
相关产品推荐

