我有两台机器:WEB-FE
和WEB-BE
。WEB-BE
上运行SQL Server,WEB-FE
上运行IIS。两者都在服务器2019上,并且是工作组的一部分。未加入任何AD域。我们正在使用。net 6。
我当前的工作连接字符串是:
Data Source=web-be;Initial Catalog=MyDb;Persist Security Info=True;User ID=MyApp;Password=thebesteverpassword
我想通过应用程序池用户连接到数据库,而不是使用用户id/密码组合,但我还没有能够做到这一点,尽管我的努力。
据我所知,应用程序池需要作为一个本地用户来设置和运行,这样当它连接到另一台机器上的SQL Server时,该用户将与SQL Server在其一侧的用户相同。
我没能找到关于如何一步一步做这件事的实际说明,这让我很惊讶。我所看到的大多数东西都说AD和集成安全是可行的,但我不能做集成安全,因为这两台机器不在域中,也不会在;他们在一个工作组里。我可以通过在应用程序设置中指定用户/密码组合进行连接。
我想得到关于应用程序设置的说明。json连接字符串应该看起来像,什么设置需要在IIS的FE服务器上完成,以及什么设置需要在SQL server的be服务器上完成,以便当我进行数据库调用(通过实体框架核心)我将得到我正在寻找的数据。
应该像
这样简单- 在两台服务器上使用相同的用户名和密码创建本地用户
- 在SQL Server中创建一个具有此windows用户权限的登录名和用户。
- 配置你的IIS应用池以该用户运行,并使用进程内托管模式。 在连接字符串中使用
Integrated Security=true
。