Asp.net 授予sql server数据库对IIS APPPOOL的访问权限\DefaultAppPool

Asp.net 授予sql server数据库对IIS APPPOOL的访问权限\DefaultAppPool,asp.net,iis-7.5,sql-server-2012-express,Asp.net,Iis 7.5,Sql Server 2012 Express,我有一个ASP.NET应用程序,它正在尝试访问sql server数据库,当我运行它时,我收到一个错误消息 “用户IISAPPPOOL\DefaultAppPool登录失败” 搜索web时,我发现我应该授予此用户访问权限,因此我执行了以下脚本: grant execute on schema :: dbo to [IIS APPPOOL\DefaultAppPool] 它作为数据库的脚本成功执行,但我仍然收到“登录失败”错误 缺少什么?检查DefaultAppPool用于连接的用户 在IIS

我有一个ASP.NET应用程序,它正在尝试访问sql server数据库,当我运行它时,我收到一个错误消息

“用户IISAPPPOOL\DefaultAppPool登录失败”

搜索web时,我发现我应该授予此用户访问权限,因此我执行了以下脚本:

grant  execute on schema :: dbo to [IIS APPPOOL\DefaultAppPool]
它作为数据库的脚本成功执行,但我仍然收到
“登录失败”
错误


缺少什么?

检查DefaultAppPool用于连接的用户

在IIS管理器上,检查DefaultAppPool高级属性并查找标识。你需要给它一个有足够特权的用户,这取决于你的站点要做什么

我通常为不同的站点创建不同的应用程序池,这取决于它们将执行的操作,例如,如果您的应用程序将向服务器上的文件夹写入文档,则应用程序池的用户将需要对该文件夹的写入权限


使用管理员用户也不是一个好主意,因为这可能导致潜在的安全漏洞。然而,这可能是一个很好的方法来检查你的问题是否来自那里。

我想我已经知道它是什么了。当我升级SQL Server Express时,它安装了一台新服务器。\SQLEXPRESS(因为我使用了“新SQL实例”)、远程连接(在此服务器中配置的是远程连接,而不是LocalDB),我的数据库仍然在LocalDB中。但现在我遇到了另一个错误,可能与WCF数据服务有关…

在SSME中,我在用户映射中添加了NT AUTHORITY\NETWORK SERVICE的登录名(“NT AUTHORITY\Servicio de red”,西班牙语为“NT AUTHORITY\Servicio de red”),并为其提供数据库的db_所有者角色成员身份。在IIS7.5中,DefaultAppPool设置为ApplicationPoolIdentity(ProcessModel\Identity)。不知道还能做什么。。。我的网站是一个测试网站,我想给它的一切特权为初学者