IIS 7 MVC 应用程序登录失败

IIS 7 MVC App Login Failed

我构建了一个在本地完美运行的 MVC 5 Web 应用程序。我已经上传到网络服务器并放在 inetpub 文件夹等中。

此 Web 服务器使用 IIS 7,我对此经验不多,但是,我已经按照惯例创建了一个站点和应用程序池。

当我浏览我的网站时,主页加载正常。但是一旦我尝试登录,就会出现此错误

Cannot open database "StarNewV2" requested by the login. The login failed. Login failed for user 'IIS APPPOOL\StarAppPool'.

这很奇怪。数据库在 SQL 服务器中正确设置,数据库用户也是如此。此信息也在应用程序 web.config.

的连接字符串(实体框架)中

有什么想法吗?

提前致谢。

更新

这是我在 web.config

中的连接字符串
<add name="Star" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=*****\*****;initial catalog=myDB;integrated security=True;User ID=myDBUser;Password=*******;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

您的本地开发环境在您的凭据下运行,而生产服务器使用自己的 AppPool 凭据。您需要为您的应用程序添加数据库用户并将连接字符串更改为在用户凭据下登录。

检查您 web.config 是否有 user id=USER;password=PWD

<add name="MyDB" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=devd;initial catalog=MyDB;persist security info=True; **user id=USER;password=PWD**;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

您也可以将 AppPool Identity 更改为 LocalSystem,这可能会解决您的问题,但这会增加您的 IIS 的漏洞。