Windows Server 2025 / 组策略顺序和继承如何影响结果

组策略通常按“本地 → 站点 → 域 → 组织单位(OU)”处理,在 OU 层次中从上级逐步到达最接近对象的位置。如果两个组策略对象(GPO)为同一设置指定不同值,结果还取决于链接顺序、强制、继承、筛选和该设置自身的处理方式。应通过结果报告确认实际生效的来源,而不是认定最下级 OU 永远优先。

理解默认优先级与例外

组策略具有累积性:后处理的 GPO 不会清除先前 GPO 中所有互不冲突的设置。只有同一项设置出现不同值时,优先级才用于判断冲突结果。组策略处理官方说明介绍了常规顺序及其例外。

链接顺序比较的是同一站点、域或 OU 上的多个 GPO。Lab 下的顺序 1 和 Workstations 下的顺序 1,不属于同一张优先级列表。Set-GPLink 的 Order 参数说明,在同一个容器中,较小顺序号后处理,因此冲突时优先级较高。本实验只改变一个链接的启用状态,不更改链接顺序或强制选项。

条件 默认解释
上级和下级 OU 定义同一设置 没有例外条件时,更接近对象的 OU 通常可为冲突设置提供最终值。
同一个 OU 存在多个链接 较小顺序号通常表示较高优先级:同一容器中的 1 优先于 2。
阻止继承(Block Inheritance) 属于容器的属性,可阻止从更高层继承的普通链接,但不能阻止强制链接。
强制(Enforced) 属于链接的属性,可防止下级以冲突设置覆盖它,或通过阻止继承将它排除。

安全筛选和 Windows 管理规范(WMI)筛选可能使按链接位置看似符合范围的 GPO 不再适用。还应区分计算机配置、用户配置及各自对象的位置。被筛选排除的 GPO 不会仅因顺序号较小就生效。不要为了说明一个结果而同时修改筛选、继承和强制选项。

准备并记录初始状态

CLIENT1 必须是 ad.example.test 的成员,其计算机对象位于 Lab → Workstations,并能通过正常工作的内部 DNS 访问域控制器。使用有权在实验 OU 中创建、编辑和链接 GPO 的账户,通过 gpmc.msc 打开组策略管理控制台(GPMC)。先检查 Lab-Computer-Message 及其在 Workstations 下已启用的链接。如果在创建和链接 GPO 的实验中清空消息以测试移除效果,应先重新定义标题 Lab computer 和文本 Windows Server course lab,更新 CLIENT1 并确认这个初始状态,再添加上级 GPO。

记录两个 OU 的链接顺序、启用状态、“强制”(Enforced)、阻止继承和筛选,以及两个消息值及其有效来源。比较期间不改变这些条件。Lab 上的新链接可能作用于其下所有 OU 中的计算机,例如没有被其他条件排除的 Lab → Servers 中的 FS1;只观察 CLIENT1 并不会把策略限定为仅对它生效。只使用隔离的实验树,如果其中存在不应更改的设备,应停止本次试验。两个 GPO 的消息正文保持一致,只让标题不同。

在两级 OU 中比较同一设置

  1. 在 GPMC 中展开“林”→“域”→ ad.example.test,右键单击上级 Lab OU,在该域创建 GPO 并链接到这里,准确命名为 Lab-Parent-Message。不要链接到整个域或 Workstations;若对象已存在,先检查其他用途。
  2. 编辑 Lab-Parent-Message,进入“计算机配置”→“策略”→“Windows 设置”→“安全设置”→“本地策略”→“安全选项”,将“交互式登录:试图登录的用户的消息标题”定义为准确值 Parent lab。
  3. 将配套消息文本定义为 Windows Server course lab,与下级 GPO 完全一致。在 GPMC 的“设置”选项卡确认两个值。
  4. 在 Lab-Computer-Message 中保留标题 Lab computer 和相同正文。两个链接应启用、计算机配置应有效,不使用强制或新增筛选。不要为制造预期结果而更改阻止继承或权限;应先查明实验状态的差异。
  5. 在 CLIENT1 上以本地管理员身份打开 Windows PowerShell,执行下面的代码块。等待更新结果并处理错误,再检查新报告及下一次登录。
gpupdate /target:computer /force
$gpReport = Join-Path $env:TEMP ('gp-order-' + (Get-Date -Format 'yyyyMMdd-HHmmss') + '.html')
gpresult /scope computer /h $gpReport
$gpReport

最后一行显示运行命令用户的临时目录中的 HTML 文件路径。在 CLIENT1 浏览器中打开该路径,检查报告时间、计算机、已应用 GPO 和标题的实际来源。保存工作并完全注销会话,在下次登录观察消息。每个阶段都重新执行代码块,生成带新时间戳的报告,不要把旧浏览器标签页当作当前结果。强制刷新会重新应用计算机策略,不只针对本次 GPO,也不能代替结果核对。

在两个链接均启用、没有强制、没有阻止继承将上级 GPO 排除且筛选均适用的条件下,CLIENT1 应显示 Lab computer,并在报告中将标题来源标为链接到 Workstations 的 Lab-Computer-Message。对这项设置而言,更接近对象的 OU 通常优先。如果显示 Parent lab 或其他值,应先调查真实来源和条件,例如其他强制 GPO、链接禁用、筛选或对象位置不同。两个 GPO 都可能列为已应用,但它们不会同时提供两个有效标题。

只禁用下级链接并重新启用

  1. 在 GPMC 中,仅右键单击 Workstations 下 Lab-Computer-Message 的链接,取消“链接已启用”(Link Enabled)。不要删除链接、禁用整个 GPO 的计算机配置,也不要修改该对象在其他位置的链接。
  2. 更新 CLIENT1 并生成新报告。保存工作后注销,再检查下次登录,同时保持其他条件不变。
  3. 确认报告是否将标题来源改为 Lab-Parent-Message,屏幕是否显示 Parent lab;正文应仍为 Windows Server course lab。如果不符,应核对真实来源和更新结果,而不是一律归因于继承。
  4. 在 Workstations 下重新勾选同一个 Lab-Computer-Message 链接的启用选项。更新 CLIENT1、生成新报告,确认来源恢复为 Lab-Computer-Message,标题恢复为 Lab computer,正文保持不变。

本试验让两个 GPO 明确定义同一设置的不同值。禁用下级链接后,上级 GPO 仍然提供值,因此标题变为 Parent lab 不能证明删除链接会普遍恢复所有设置的旧值。保持筛选和消息正文不变。结果不符时,先重新启用下级链接并核对初始状态,再调查其他因素。

仅清理新增的实验配置

先确认 Workstations 下的 Lab-Computer-Message 链接已重新启用,且 CLIENT1 再次从该 GPO 获得 Lab computer 标题。检查 Lab-Parent-Message 的所有用途,只移除 Lab 下新增的试验链接;只有该 GPO 专用于本次实验且没有其他用途时,才考虑删除对象本身。不要为清理试验而删除下级 GPO 或其他链接。更新 CLIENT1、生成新报告,并确认原来的标题和正文仍然有效。记录移除了什么,以及哪些选项保持不变。

比较用户设置时,应检查用户对象所在的 OU。只包含用户设置的 GPO 链接到 CLIENT1 的计算机 OU 后,通常不会像计算机设置那样跟随计算机应用。环回处理(loopback)可以通过“合并”或“替换”模式改变用户 GPO 列表,但需要单独设计,本实验不启用。组策略作用范围说明有助于区分链接、筛选与实际应用。