用户 'IIS APPPOOL\ 登录失败

Posted

技术标签:

【中文标题】用户 \'IIS APPPOOL\\ 登录失败【英文标题】:Login failed for user 'IIS APPPOOL\用户 'IIS APPPOOL\ 登录失败 【发布时间】:2020-12-02 10:02:05 【问题描述】:

我在本地系统中使用 SQL Server 2014。有一个使用 .NET Framework 4.6.1 的 MVC 应用程序,它运行良好。

现在,我使用 .NET Framework 4.7.2 创建了一个新的 MVC 应用程序并看到了这个问题。本地网站无法连接到数据库。

System.Data.SqlClient.SqlException 无法打开数据库“NewApp” 登录请求。登录失败。用户 'IIS 登录失败 APPPOOL\dev.newapp.com'。

我检查了用户映射属性,并列出了两个应用程序。我没有对 IIS 或 SQL Server 进行任何更改。

另外,我尝试在 IIS 中将 DefaultAppPool 的标识更改为 LocalSystem,但没有成功。

IIS、SQL 服务器和网站 - 都在同一台机器上。

【问题讨论】:

您能否添加更多有关您的基础架构的详细信息? SQL server 和 IIS 是在同一台机器上运行,不同的机器,不同的域...? @user7415753 都在同一台机器上 【参考方案1】:

Windows 和 SQL Server 身份验证之间存在差异。

根据您的图像,您已配置 sa 用户,即 SQL Server 身份验证,您不能在应用程序和 web.config 中使用 Windows 身份验证。

因此,如果您想使用sa 登录,请将您的 web.config 文件和数据库连接字符串更新为:

Server=yourServer;Database=yourDatabaseName;User=sa;Password=saPassword;

或不同的语法:

Data Source=yourServer;Initial Catalog=yourDatabaseName;User=sa;Password=saPassword;

您的应用程序正在尝试使用本地用户作为 Windows 身份验证。

【讨论】:

我可以通过在连接字符串中设置Integrated Security=false 来解决这个问题。之前它被设置为 true。 是的,Integrated Security=true 正在强制执行 Windows 身份验证。

以上是关于用户 'IIS APPPOOL\ 登录失败的主要内容,如果未能解决你的问题,请参考以下文章

用户 'IIS APPPOOL***' 登录失败

用户 'IIS APPPOOL\ 登录失败

用户'IIS APPPOOL ASP.NET v4.0'登录失败

用户 'IIS APPPOOL**' 登录失败的解决方案(项目部署到本地IIS上打开网页出现报错)

IIS7 中的身份池

iis部署sa登录失败