我正在使用IIS部署具有asp.net core 2.1的Web应用程序,该过程成功完成,并且网站正在正常运行,除了数据库(这是一个localdb
实例)之外,我总是会收到此错误消息:
SqlException:无法打开登录请求的数据库“ Mydb”。登录失败。 用户'IIS APPPOOL \ CORE'登录失败。
我已经启用了loadUserProfile="true"
和setProfileEnvironment="true"
在applicationHost.config
中的网站池中
并使用这些链接Link#1-Link#2,我向数据库用户添加了具有正确权限的用户'IIS APPPOOL \ CORE',并向SSMS添加了localdb
,并使用了Link确保所有SQL Server服务都在正确的端口下运行。
我也尝试了localdb
的共享实例,但是也没有用。
我看到了这个问题的一些副本,但没有一个对我有用。
我确实设法使它在我登录时使用的本地Windows帐户下运行,但是我认为这不是正确的方法,因为如果站点被黑客入侵会带来一些安全风险,这就是为什么建议使用虚拟帐户的原因之所以使用这种方法,是因为它们对系统资源的访问受到限制,因此可以说连接字符串很好,问题应该出在虚拟池帐户无法访问数据库上。
有什么我想念的吗?