ASP.Net错误:";应用程序池的标识无效";
我的ASP.Net web服务无法运行,因为应用程序池由于身份危机而无法启动 我在应用程序池中使用的用户是域用户,它是本地管理员,它在IIS_WPG中,我给了它“作为操作系统权限的一部分”的权限-什么都没有。娜达。每次启动应用程序池失败 将用户添加到IIS_WPG通常是缺少的,但我想还有其他东西 我尝试过的事情:ASP.Net错误:";应用程序池的标识无效";,asp.net,Asp.net,我的ASP.Net web服务无法运行,因为应用程序池由于身份危机而无法启动 我在应用程序池中使用的用户是域用户,它是本地管理员,它在IIS_WPG中,我给了它“作为操作系统权限的一部分”的权限-什么都没有。娜达。每次启动应用程序池失败 将用户添加到IIS_WPG通常是缺少的,但我想还有其他东西 我尝试过的事情: 将用户添加到IIS_WPG 将用户添加到本地管理组并添加“作为操作系统的一部分”权限 aspnet_regiis-ga 重新启动 检查密码 重新创建应用程序池并仅将我的应用程序分配给
- 将用户添加到IIS_WPG
- 将用户添加到本地管理组并添加“作为操作系统的一部分”权限
- aspnet_regiis-ga
- 重新启动
- 检查密码
- 重新创建应用程序池并仅将我的应用程序分配给它
要知道,这与Windows 2000无关,只是域的组策略阻止您将此权限分配给用户。发生的情况是,您可能正在使用不同版本的.NET framework运行应用程序的池中运行应用程序。确保该池中的所有应用程序都运行相同的版本。如果这些应用程序必须在与此版本不同的版本下运行,请创建一个新池并将您的应用程序添加到其中。我知道这很简单,但您是否检查了密码是否正确?请尝试在
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
文件夹中运行以下命令:
aspnet_regiis -ga <your_app_pool_user>
aspnet\u regais-ga
有关配置用户帐户以用作应用程序池标识的更多信息,请参阅以下文章:
以前有过这个问题,但无法追踪我同情的原因!一些可能有帮助的提示:
- 检查密码是否正确(必须说对不起)
- 使用没有其他网站在其中运行的新应用程序池
- 确保已运行aspnet_regiis-ga来设置所需的权限
另外-确保帐户对支撑网站/应用程序的文件系统具有“读取和执行”、“列出文件夹内容”和“读取”访问权限。确保有一个名为c:\inetpub\temp\apppools的文件夹。如果没有,请创建它。您是否有将帐户从iis\u wpg组中拉出的组策略?无论出于何种原因,工作进程或服务需要在自定义帐户下运行。确保尝试访问应用程序池的用户帐户是AD中的
IIS\u USRS
组的成员。应用程序池用户帐户可能被锁定。另一种方法是如果您有CGI脚本。默认情况下,CGI脚本作为访问网站的Windows用户运行。为了在特定帐户下运行CGI脚本,您需要额外的步骤:
IIS 7+
转到inetmgr.exe中网站配置中的CGI部分。将模拟设置为false
IIS 6
以管理员身份运行以下命令:
cd \inetpub\adminscripts
cscript.exe Adsutil.vbs SET W3Svc/CreateProcessAsUser false
下一步:让您的IT部门升级所有WS2003计算机…在遵循所有其他建议之后:
请记住重新启动IIS管理服务 另一个值得一提的小问题可能是,如果是管理员创建的新用户帐户,则可能会应用默认策略,如“首次登录时更改密码”。如果是这种情况,并且尚未登录,这也将有效阻止用户帐户运行您的服务
这不适用于OP的情况,因为他提到他可以使用该帐户以交互方式登录,但我今天遇到了这种情况,其他人也可能遇到。在我的情况下,问题是我试图使用一个域帐户,而域控制器与我的机器发生了问题。我刚刚用较新版本的Windows(Windows 10)创建了一个新VM,并要求域管理员将其添加到域中,但我保留了与另一台计算机相同的主机名 此外,在事件查看器中,我发现了有关域控制器等的错误消息,这给了我一个线索
我不得不将机器从域中删除并再次添加,问题就解决了。发布了一个简单的完整性答案,因为我遇到了相同的错误,但对我来说,解决这个问题的方法是在设置身份时使用用户名包含域。用户wa