【问题标题】:IIS site keeps prompting for credentials for Windows Authentication methodIIS 站点不断提示输入 Windows 身份验证方法的凭据
【发布时间】:2017-12-23 17:44:13
【问题描述】:

我需要一些帮助来了解我无法让 Windows 身份验证在 IIS 站点上为特定用户组工作的确切原因。 正在发生的事情是,即使我的用户是我允许访问该站点的组的一部分,IE 也会不断提示我输入凭据,即使我输入密码,HTTP 响应也是 401(未经授权)。 我也不允许更改 IE 的设置以将任何站点添加到受信任列表中(它已被公司阻止)。另一方面,除了它被阻止的事实之外,该站点域还被列为 (*.domain.com)

按照以下场景进行操作:

  • 服务器:Windows Server 2012
  • IIS:8.5
  • 用户:DomainA\MySimpleAdUser、DomainB\ServiceAdUser
  • 组:DomainB\MYGROUP(包含 DomainA\MySimpleAdUser 的 AD 组)
  • IIS_IUSRS(包含 DomainB\ServiceAdUser 的本地服务器组)

池设置

  • 名称:PoolA
  • 流程模型 > 身份 > DomainB\ServiceAdUser

服务器级别的设置

  • ASP.NET > .NET 授权

    • 允许 |用户:所有用户 |实体类型本地
  • IIS > 身份验证

    • 匿名身份验证已禁用
    • Windows 身份验证已启用
      • 扩展保护:关闭
      • 启用内核模式身份验证:已启用
      • 提供者:协商(第 1 次)-> NTLM(第 2 次)
  • IIS > 授权规则
    • 允许 |角色:DomainB\MYGROUP |实体类型本地

站点级别的设置(在 443 端口上的有效 SSL 证书上运行,这是唯一的绑定)

  • 池:PoolA

  • ASP.NET > .NET 授权

    • 允许 |用户:所有用户 |继承的实体类型
  • IIS > 身份验证

    • 匿名身份验证已禁用
    • Windows 身份验证已启用
      • 扩展保护:关闭
      • 启用内核模式身份验证:已启用
      • 提供者:协商(第 1 次)-> NTLM(第 2 次)
  • IIS > 授权规则

    • 允许 |角色:DomainB\MYGROUP |继承的实体类型

网站根目录的权限

  • 对 IIS_IUSRS 的完全控制权限
  • 对 MYGROUP 的读取和执行、列出和读取权限

Web.config

  • 这是唯一存在的有关身份验证的配置行:

==============================

观察

  • 我已经尝试使用我的特定用户来访问该站点,但仍然提示输入凭据
  • 让网站启动并运行的唯一方法是允许匿名访问它。

    请帮我弄清楚缺少什么。感谢您的帮助。

【问题讨论】:

  • 确保您尝试访问的用户是 MYGROUP 的成员并且已被复制。
  • 如果尝试登录的用户最近更改了密码,请确保他们在尝试再次登录之前清除其在凭据管理器中存储的凭据。关闭和启动(不是重新启动)也应该可以解决该问题。

标签: windows authentication iis


【解决方案1】:

安全环回检查可能存在问题。请找到以下步骤来禁用它。

  • 单击开始,单击运行,键入 regedit,然后单击确定。
  • Backup注册表
  • 在注册表编辑器中,找到并单击以下注册表项:
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
  • 右键单击 Lsa,指向新建,然后单击 DWORD 值。
  • 键入 DisableLoopbackCheck,然后按 ENTER。
  • 右键单击 DisableLoopbackCheck,然后单击修改。
  • 在数值数据框中,键入 1,然后单击确定。
  • 退出注册表编辑器,然后重新启动计算机。

【讨论】:

  • 大约 8 年前就有这个问题。而且今天又出现了。感谢您的回答。不必重新启动。
【解决方案2】:

我发现,如果经过身份验证的用户无法读取您 Web 应用程序中静态内容的文件夹,它将对您进行身份验证,然后拒绝访问。 这可以通过授予 local_Machine\Authenicated_Users 访问所需资源来解决。

就我而言,我将 Authenticated_users 添加到 IIS_IUSRS 组,它解决了我的问题。请注意,这也可以将任何经过身份验证的用户授予 IIS_IUSRS 组可用的所有文件和文件夹。所以要小心,这些用户不能通过任何其他方式访问文件系统。一个单独的组授予 NT AUTHORITY\Authenticated_Users 足够的权限来读取 png,而静态内容是最好的方法。

配置:运行 IIS 8.5、NET Framework 4.5 并启用静态内容的 Windows Server 2012 R2。

【讨论】:

  • 授予经过身份验证的用户对内容文件夹的读取权限,这解决了我的问题,谢谢!
猜你喜欢
  • 2021-04-30
  • 2012-09-06
  • 2013-06-03
  • 1970-01-01
  • 1970-01-01
  • 2020-12-28
  • 1970-01-01
  • 1970-01-01
  • 2020-08-04
相关资源
最近更新 更多