用户 '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 ASP.NET v4.0'登录失败