You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6 API部署IIS后无法连接SQL Server求助

问题排查与解决方案

核心问题原因

你的连接字符串同时配置了SQL Server身份验证(User Id+Password)和Windows身份验证(Trusted_Connection=True),SQL Server会优先使用Windows身份验证,也就是以IIS应用池的账户IIS APPPOOL\Login API尝试登录数据库,而非你配置的指定用户,这直接导致了登录失败。

解决方案

方案1:修正连接字符串(推荐,使用SQL身份验证)

直接移除Trusted_Connection=True;,让连接字符串使用配置的SQL账号登录:

Server=<server>;Database=<dbname>;User Id=<user>;Password=<pass>;

修改后重启IIS应用池,测试API连接。

方案2:使用Windows身份验证(适配应用池账户)

如果想保留Windows身份验证方式,可按以下操作:

  • 打开IIS管理器,找到你的API对应的应用池(名称为Login API)
  • 右键点击应用池→高级设置,查看“标识”项
    • 若继续使用应用池账户:在SQL Server中添加IIS APPPOOL\Login API作为登录名,映射到目标数据库并授予所需的读写权限
    • 若切换为指定账户:将标识改为已在SQL Server中配置好权限的域账户/本地账户,保存后重启应用池

额外验证项

  • 确认SQL Server开启了混合身份验证模式:打开SQL Server Management Studio,右键服务器→属性→安全性,选择“SQL Server和Windows身份验证模式”,修改后重启SQL Server服务
  • 检查服务器防火墙是否允许访问SQL Server默认端口(1433)
  • 核对连接字符串中的服务器地址、数据库名、账号密码是否完全正确,无未替换的占位符

内容的提问来源于stack exchange,提问作者Mary Franklin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 05:33:17