为什么我的站点在配置传递身份验证时使用 IUSR 帐户?

为什么我的站点在配置传递身份验证时使用 IUSR 帐户?

我有一个 IIS7 网站,该网站设置为在其自己的应用程序池中运行。应用程序池配置如下:

Managed Pipeline Mode: Integrated
Identity: I_siteuser(帐户是 IIS_IUSRS 的成员)

该网站物理路径为:d:\websites\testsite\www并且该账户I_siteuser对该文件夹有修改权限。

如果我将网站设置为使用传递身份验证我收到一个安全错误:

HTTP Error 401.3 - Unauthorized

如果我将网站配置为使用特定用户(I_siteuser),我就可以正常查看页面和运行脚本。

我的印象是,如果我使用传递身份验证则将使用应用程序池的标识(在本例中配置为以 的标识运行I_siteuser)。

事实似乎并非如此,该网站运行的身份实际上是内置帐户IUSR。我通过为网站文件夹添加读取/执行权限来验证这一点IUSR

这里我还遗漏了其他设置吗?

更新:

我也在网站上启用了此功能,Basic Authentication但这Windows Authentication只会导致出现登录对话框。

我还看到在任务管理器中以的身份运行的应用程序池的工作进程I_siteuser

答案1

我认为您误解了直通身份验证。如果启用了直通身份验证,则会发生以下两种情况之一:

  • 对于匿名身份验证,为匿名访问指定的用户 ID 需要访问文件的物理路径。(默认情况下,这是内置的 IUSR 帐户,但可以在编辑操作中为匿名身份验证进行配置)

  • 如果您启用了身份验证,则经过身份验证的用户凭据需要访问文件的物理路径。应用程序池标识也需要对文件的只读访问权限。

答案2

检查站点的身份验证方法,并确保已启用基本身份验证和/或 Lanman 身份验证。

JR

目录中的任何文件是否包括来自其他目录的文件,而这些目录的访问权限受到限制?还请尝试向组 IIS_IUSRS 授予读取权限,而不仅仅是向 I_sitename 用户授予读取权限。显然,请确保在站点(或虚拟目录)身份验证设置中启用了匿名访问。

相关内容