当我尝试使用 AD 组帐户而不是 ApplicationPoolIdentity 时,我遇到了以下问题。当我使用 ApplicationPoolIdentity 时,一切正常,但当我使用 AD 帐户时,我收到以下错误:
Unhandled Execution Error
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.IO.FileLoadException:
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[FileLoadException]
System.ServiceModel.Activation.ServiceHttpModule.BeginProcessRequest(Object sender, EventArgs e, AsyncCallback cb, Object extraData) +0
System.Web.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +12336350
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +288
我尝试使用进程监视器来查看发生了什么,而我得到的唯一结果是:
Result: BAD IMPERSONATION
Path: HKLM\System\CurrentControlSet\Services\EventLog
我已授予 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog 上 AD 帐户的完全访问权限,但我仍然收到相同的错误。
我在 Windows 2012 上使用 IIS 8.5。
答案1
尝试将您想要使用的 AD 帐户添加到 IIS 服务器上的本地 IIS_IUSRS 组。
我相信您必须使用 AD 用户/服务帐户来运行应用程序池,不能使用 AD 安全组来运行应用程序池。