【发布时间】:2012-02-27 17:02:37
【问题描述】:
如果我在 iis6 和 acl 中为单个 aspx 页面启用了 Windows 身份验证、匿名和基本禁用,则只有我的用户(我登录的用户)对该文件具有完全权限,没有添加其他帐户到列表中。
当凭据正确时,为什么我会收到 401.3 访问被拒绝错误。凭据框只是不断出现。我已经从父目录中删除了继承,以防有任何拒绝权限,我检查了我的帐户没有被锁定,我什至尝试使用提琴手看看我是否能找到任何问题,但我发现它令人困惑。
我可以让页面显示的唯一方法是将所有人组添加到 acl 中,这让我觉得即使我指定了 Windows 身份验证,它仍在使用另一个帐户但我不知道是哪个帐户?我尝试将IUSR帐户添加到acl中,但仍然没有成功。
这可能与 NTML 和 kerberos 有关。在提琴手上,它说:
存在WWW-Authenticate Header:协商
存在 WWW-Authenticate 标头:NTLM
但我不知道这是否正确(有点出乎我的意料)。因此,我们将不胜感激任何提示或想法。
谢谢
【问题讨论】:
-
鉴于您对 IUSR 帐户的评论,您可能已经这样做了,但是... 仔细检查此应用程序的应用程序池标识是否具有对文件系统上文件的读取和执行访问权限。应用程序池标识可以是网络服务、域服务帐户或内置帐户。如果该帐户无权访问,IIS 将无法读取该文件以将其提供给您。
-
那么应用池身份是否会覆盖 windows 身份验证?
-
@Daniel 我在网络服务中添加了它,它有效,谢谢。我无法将您的评论标记为答案
-
与其说是重写身份验证模型...要提供资源,必须有 2 个帐户可以访问该资源:1) 请求者,根据文件 ACL 确认用户有权访问该资源文件,以及 2) 应用程序池标识,以允许 IIS 通过 HTTP 实际读取页面并将其提供给请求者。