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

工作组环境下IIS+.NET Core 6通过应用池用户连接SQL Server配置方法

工作组环境下用应用池身份连接SQL Server的配置步骤

1. appsettings.json 连接字符串写法

移除原连接字符串中的User ID和Password参数,改用Windows身份验证,示例如下:

"ConnectionStrings": {
  "DefaultConnection": "Data Source=WEB-BE;Initial Catalog=你的目标数据库名;Integrated Security=True;Trust Server Certificate=True"
}
  • Integrated Security=True:指定使用当前进程的身份(即应用池身份)连接SQL Server
  • Trust Server Certificate=True:工作组环境下通常没有CA签发的证书,添加该参数可避免SSL证书验证错误

2. WEB-FE服务器IIS配置

由于两台机器处于工作组而非域环境,无法使用IIS内置的ApplicationPoolIdentity跨机器验证,需创建专用本地用户:

  • 在WEB-FE上创建本地用户(比如命名为SQLAppUser),设置强密码,同时勾选密码永不过期、用户不能更改密码
  • 打开IIS管理器,找到你的.NET Core应用对应的应用池,右键选择「高级设置」
    • 找到「标识」选项,点击右侧的「...」,选择「自定义账户」,点击「设置」后输入刚才创建的SQLAppUser和对应的密码
    • 确认应用池的*.NET CLR版本*设置为「无托管代码」(适配.NET Core应用)
  • 给SQLAppUser授予WEB应用目录权限:找到网站根目录,右键打开「属性」-「安全」页,添加WEB-FE\SQLAppUser,授予读取&执行、列出文件夹内容、读取权限

3. WEB-BE服务器SQL Server配置

需在WEB-BE上创建与WEB-FE完全同名同密码的本地用户,再配置SQL Server权限:

  • 在WEB-BE上创建本地用户SQLAppUser,密码必须和WEB-FE上的完全一致,同样勾选密码永不过期、用户不能更改密码
  • 打开SQL Server Management Studio (SSMS),连接到目标SQL Server实例
  • 展开「安全性」-「登录名」,右键选择「新建登录名」
    • 选择「Windows身份验证」,点击「搜索」,输入WEB-BE\SQLAppUser,确认名称无误后点击「确定」
    • 切换到「用户映射」选项卡,勾选你的目标数据库,在下方「数据库角色成员身份」中勾选db_datareader、db_datawriter;若需使用EF Core执行迁移操作,额外勾选db_owner或授予对应的DDL权限
  • 检查SQL Server身份验证模式:打开SQL Server配置管理器,找到对应的SQL Server实例,右键「属性」-「安全性」,确保服务器身份验证为「SQL Server和Windows身份验证模式」
  • 重启SQL Server服务,使配置生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 13:50:39