菜单

在 L4 负载均衡器环境中成功配置 IIS 以实现集成 Windows 身份验证。

目录

概述

以下文章解释了如何在 L4 负载均衡器 + SSL 终止环境中配置 IIS 中的集成 Windows 身份验证 (IWA)。

配置此方法时,由于 SPN(服务主体名称)设置不正确或重复,身份验证经常失败。

本文对SPN注册及其必要程序进行了全面解释。

本文中的示例结构

   [客户端浏览器] | | HTTPS 访问 v [L4 负载均衡器 (TCP 443)] | | vv [服务器 1 (IIS)] [服务器 2 (IIS)]
  • 完全限定域名: sso.chat-messenger.com
  • IIS主机名: 服务器1, 服务器2
  • 共享服务帐户:CAMTEST\cam-svc

问题:SPN 重复错误

在集成 Windows 身份验证中,客户端会查找它正在访问的服务的 FQDN 的 SPN,并获取相应服务帐户的 Kerberos 票证。

setspn -S HTTP/sso.chat-messenger.com Server1$ setspn -S HTTP/sso.chat-messenger.com Server2$

如上所述,相同的 FQDN(sso.chat-messenger.com为不同主机(Server1、Server2)注册 SPN 时,出现以下错误:

发现重复的SPN,操作中止。.

解决方案:将 SPN 注册到共享服务帐户。

当在多个主机上使用相同的 FQDN 时,只需在共享服务帐户中注册一个 SPN 即可。

创建共享服务帐户

虽然在 IIS 应用程序池中运行的服务帐户可以是域用户(只要它属于域用户组),但通常建议将服务帐户与普通用户分开,以防止意外错误并明确密码策略的应用范围。OU = 服务帐户 像这样,OU 用户 为了将其与 Active Directory 域控制器区分开来,摄像头服务 创建它。

使用您的服务帐户注册SPN。

我们将使用上面创建的服务帐户注册 SPN。

setspn -S HTTP/sso.chat-messenger.com CAMTEST\cam-svc

任何已加入域的设备均可接受。但是,需要具备域管理员权限。
• SPN 也用于 HTTPS 通信。HTTP/主机名您必须按此格式注册。

IIS 应用程序池配置

服务器1, 服务器2 两个服务器上应用程序池的执行用户都是您创建的服务帐户。 CAMTEST\cam-svc

IIS 管理器的“配置编辑器”

要将 IIS 应用程序池更改为服务帐户并确保 Windows 身份验证与 Kerberos 正常工作,您需要在 IIS 管理器的“配置编辑器”功能中配置以下设置:

  • system.webServer/security/authentication/windowsAuthentication 部分
  • 使用应用程序池凭据真的
  • 使用内核模式错误的

如果 IIS 运行在域控制器上,则可能不需要此设置。

为共享服务帐户设置“以批处理作业身份登录”权限。

应用程序池响应 Web 请求。 w3wp.exe工作进程已启动。如果使用共享服务帐户运行此进程,但未授予“以批处理作业身份登录”权限,则进程将被拒绝,并发生 HTTP 503 错误。因此,共享服务帐户需要具有“以批处理作业身份登录”权限(基于组策略对象)。

后续设置也可以通过每个 IIS 终端的本地安全策略进行控制,但 Active Directory 域控制器上的组策略对象 (GPO) 中的组织策略可能会施加限制。在这种情况下,需要在 GPO 级别进行控制,本节将介绍如何进行控制。

如果 IIS 运行在域控制器上,则可能不需要“以批处理作业身份登录”。

将 GPO 链接到 OU=ServiceAccounts 的步骤

服务帐户CAMTEST\cam-svcOU = 服务帐户如果创建于
如果您没有将组策略(例如,IIS-BatchLogon-GPO)链接到此组织单元,摄像头服务该策略不适用。由于 GPO 的适用性取决于“它链接到哪个 OU”,因此务必将帐户位置与 GPO 链接到的位置相匹配。

  1. gpmc.msc 执行该命令并启动“组策略管理编辑器”。
  2. 在左侧窗格中camtest.com/ServiceAccounts 右键单击 OU → "为该域创建 GPO 并将其链接到此容器。→ 输入任意名称(例如)IIS-BatchLogon-GPO
  3. 创建IIS-BatchLogon-GPO编辑
  4. 计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 用户权限分配 → 以批处理作业身份登录
  5. 双击打开对话框。CAMTEST\cam-svc 添加用户

关于 GPO 设置的应用

为确保 GPO 在目标 IIS 服务器上正确应用…… gpupdate /force 执行此操作至关重要。这将确保 GPO 设置立即生效。授予“以批处理作业身份登录”权限时尤其如此,因为策略实施可能存在延迟。 w3wp.exe 这可能导致启动失败。

  • URLをコピーしました!
目录