组策略

深入研究高级组策略管理

Derek Melber

 

概览:

  • AGPM 安装和体系结构
  • GPO 的脱机编辑
  • 使用 AGPM 更改管理
  • 灾难恢复

Microsoft 刚收购了 DesktopStandard,该公司创造的产品可完整管理“组策略对象”。在我看来,每个使用 Active Directory 的企业都应运行此工具—“高级组策略管理”(AGPM)。

AGPM 可脱机编辑“组策略对象”(GPO)、更改管理、更新策略的工作流、委派以及更多内容。在本文中,我将深入研究该工具的内部工作流,从而让您进一步了解这个既奇妙又极其有用的产品。

首先,我来介绍一点背景知识。AGPM 最初称为 GPOVault。收购 DesktopStandard 之后,Microsoft 将其重命名为 AGPM,并将其添加到 Microsoft® 桌面优化包 (MDOP) 中。目前,仅当您的 Windows Vista® 桌面许可证在 Microsoft 软件担保的范围内时,您才能获得 MDOP。

根据我使用这些所包含工具的经验,我认为到目前为止,MDOP 是 Microsoft 最近推出的产品中最了不起的产品之一。MDOP 附带五个不同的工具,每一工具都令人印象深刻,组合在一起则成为最引人注意且有价值的工具集。要了解有关 MDOP 的更多信息,请登录 MDOP 网站:windowsvista.com/optimizeddesktop

AGPM 安装和体系结构

AGPM 安装设计得非常小巧、便利—它包含服务器组件和客户端(管理)组件。服务器组件应安装在域中的成员服务器上;它不更改 Active Directory®、架构或任何其他目录服务。需要时,AGPM 可安装在域控制器上。

服务器安装将安装需要基于域的服务帐户的服务,AGPM 就是代表用户从该帐户访问实时生产“组策略对象”。安装还需要有一个 AGPM 管理,它将控制 AGPM 内的所有设置,例如委派和初始 GPO 管理。

客户端必须安装在运行 Windows Vista 且已具备正常管理功能的计算机上,最可能是在网络和 Active Directory 的管理员桌面上。客户端现在需要将 AGPM 设置指向 AGPM 服务器,并建立与存档的连接。AGPM 客户端使用“组策略管理控制台”(GPMC) 界面,并显示为 Change Control(更改控制)节点,如图 1 所示。

Figure 1 AGPM is fully integrated into the GPMC for ease of use

Figure 1** AGPM is fully integrated into the GPMC for ease of use **(单击该图像获得较大视图)

AGPM 客户端将访问的文件以基本文件格式存储在 AGPM 服务器上。这是存储这些文件的最简单方法,且易于备份整个 AGPM 存档。大多数 AGPM 功能都使用内置的 GPMC API,从而实现了产品的无缝集成和使用。AGPM 不使用数据库,它将 GPO 存储在单个文件夹中,由指令清单控制所有 GPO 与存档内父 GPO 的关联。这会确保所有 GPO 都具有唯一的 GUID,但置入产品时,正确的 GUID 会在部署过程中与 GPO 建立关联。

脱机编辑 AGPM

AGPM 最基本的功能是可以脱机(离开生产环境)编辑 GPO。使用默认 GPMC 来编辑 GPO 会导致错误设置立即被推入到生产环境中,从而可能导致灾难性后果,这一点众所周知。

APGM 通过“控制”GPO 来处理 GPO 的脱机编辑。受控制的 GPO(如图 2 所示)可以脱机编辑,并且不会侵入生产环境。

Figure 2 Controlled GPOs are stored in the AGPM archive and can be edited offline

Figure 2** Controlled GPOs are stored in the AGPM archive and can be edited offline **(单击该图像获得较大视图)

控制 GPO 非常简单。不受控制的 GPO(如图 3 所示)列出尚未与 AGPM 存档关联的所有 GPO。右键单击上述任一 GPO 都会出现一个菜单,其中包括“控制”。选择“控制”菜单选项将从生产位置(系统卷或 SYSVOL,在域控制器上共享)复制 GPO,并将其置于 AGPM 存档中。可控制多个 GPO;只需在选择 GPO 的同时(获取要控制的 GPO 的正确列表)按住 Shift 或 Ctrl 键,然后右键单击访问“控制”菜单选项即可。您仍可以使用“组策略对象编辑器”(GPOE) 来编辑受控制的 GPO。这只是已将 AGPM 完全集成到 GPMC 中的另一种方法。

Figure 3 Uncontrolled GPOs are placed in the archive by selecting the Control menu option

Figure 3** Uncontrolled GPOs are placed in the archive by selecting the Control menu option **(单击该图像获得较大视图)

AGPM 管理委派

让我们来看看 AGPM 如何通过首先检查您使用 GPMC 委派 GPO 管理的方式来处理委派。在 GPMC 内,有五个您可以授予给用户的不同委派任务:创建 GPO、链接 GPO、编辑 GPO、管理 GPO 和读取 GPO。

所有这些委派都是在 GPMC 界面内完成的。它们全部由在“委派”选项卡(与 GPMC 内的不同节点关联)上列出的用户和组控制。我们所关注的是那些允许创建新 GPO 的委派,以及编辑和管理现有 GPO 的委派。

GPMC 内 GPO 的创建由与“组策略对象”节点关联的“委派”选项卡处理,如图 4 所示。一旦安装 AGPM,您将能够从有权创建 GPO 的用户和组列表中删除所有用户和组。(无需从“委派”选项卡中删除系统、计算机或计算机组即可创建 GPO。)GPO 的创建现在由控制 AGPM 服务的服务帐户处理。对于所有被委派在 AGPM 内部“创建 GPO”和“部署”的用户和组,此帐户将被委派代表他们创建 GPO。

Figure 4 Creation of GPOs is controlled by the list of accounts on the Delegation tab on the Group Policy Objects node in the GPMC

Figure 4** Creation of GPOs is controlled by the list of accounts on the Delegation tab on the Group Policy Objects node in the GPMC **(单击该图像获得较大视图)

这个创建 GPO 的新功能允许职责分开,并保护生产网络。理想情况是首先创建、配置和验证 GPO,然后再将其从 AGPM 环境部署到生产环境。如果没有 AGPM,则应该很少有象今天这样的错误配置推出。

对于与 GPO 的编辑或管理相关的委派,情况类似。在 GPMC 内,这些委派在与每个 GPO 关联的“委派”选项卡上配置,如图 5 所示。

Figure 5 Editing and managing GPOs is associated with each GPO individually

Figure 5** Editing and managing GPOs is associated with each GPO individually **(单击该图像获得较大视图)

一旦安装 AGPM,这些委派便需要从“组策略对象”节点下列出的每个 GPO 中删除。这将禁止所有管理员从 AGPM 外部编辑 GPO。实际上,这会将 GPO 的所有管理员引导至 AGPM,在此处,可以进行脱机编辑、更改管理、灾难恢复等任务。

删除从 AGPM 外部编辑 GPO 的用户和组是一个手动过程。AGPM 的安装和配置不会删除在生产环境下编辑 GPO 的任何用户或组。由于控制 AGPM 服务的服务帐户将代表那些在 AGPM 中修改生产 GPO 的用户执行操作,因此每个 GPO 的“委派”选项卡上不必列出任何用户或组。(计算机和计算机组不应从这些委派选项卡中删除。)

删除在 GPMC 内编辑 GPO 的全部委派后,所有管理员都不能在 GPMC 内编辑 GPO,如图 6 所示。

Figure 6 Admins can't edit GPOs from the GPMC once they are denied delegation for this action

Figure 6** Admins can't edit GPOs from the GPMC once they are denied delegation for this action **(单击该图像获得较大视图)

要完成配置,需要编辑 GPO 的所有管理员必须被添加到 AGPM 内的适当“访问控制列表”(ACL) 中。如果某个管理员需要编辑存档内的所有 GPO,则应将其用户帐户添加到已被授予在 AGPM 内的域级别进行编辑的组中,如图 7 所示。如果要将某个管理员限制为仅编辑 AGPM 存档内的几个 GPO,则应对每个 GPO 进行此配置(请参阅图 8)。

Figure 7 Domain Delegation tab allows for configuration of editing all GPOs in the archive

Figure 7** Domain Delegation tab allows for configuration of editing all GPOs in the archive **(单击该图像获得较大视图)

Figure 8 Editing of individual GPOs needs to be configured on the ACL of that GPO

Figure 8** Editing of individual GPOs needs to be configured on the ACL of that GPO **(单击该图像获得较大视图)

AGPM GPO 更改管理

AGPM 的惊人优势之一是能够跟踪对存档内的 GPO 所做的全部更改。由于这是一个自动过程,不必对其进行设置、配置或管理。当通过“AGPM 客户端”界面来管理 GPO 时,对所有更改的跟踪在后台进行。

对于默认 GPMC 处理 GPO 管理的方式而言,这是一项重大的改进。在默认 GPMC 内,没有自动化或甚至内置功能来跟踪 GPO 的更改。这一直是大多数“组策略”管理员在过去几年内所抱怨的主要问题,但现在该问题已解决。

AGPM 更改管理功能可跟踪 GPO 所发生的所有重大修改。除了对 GPO 更改有所帮助之外,更改管理系统在审计或总体管理跟踪情况方面也将有所帮助。更改管理系统将监控、跟踪以及记录每个 GPO 编辑和更改的下列细节:修改 GPO 的日期和时间、进行更改的用户、原始 GPO 设置以及对 GPO 设置的修改。

由于对所有更改的跟踪均是无缝的,因此了解什么操作会触发自动跟踪非常重要。在“AGPM 客户端”界面内,您可以右键单击 Controlled(受控制)选项卡下的 GPO,然后选择 Check-out(签出)菜单选项,如图 9 所示。

Figure 9 Checking out a GPO will trigger the automated process to track changes

Figure 9** Checking out a GPO will trigger the automated process to track changes **(单击该图像获得较大视图)

必须遵循此过程来编辑 GPO,我将在下一部分中对其进行讨论。即使 GPO 签出后立即被再次签入而无任何更改,此操作也会生成一个存档。由于 GPO 对企业而言不可缺少,因此工具需具有跟踪功能,甚至能跟踪发生更改的可能性。

签出过程在 AGPM 内强制执行,原因是必须要有一个机制,跟踪特定管理员对 GPO 的更改。两个管理员不能同时签出同一 GPO。如果某个管理员签出 GPO,但无法将其再次签入,则存在一个内置机制,允许 AGPM 管理员再次签入该 GPO。

AGPM GPO 编辑

只要安装 AGPM 客户端,您便可以访问 AGPM 存档。在 AGPM 工具内授予编辑委派或“完全控制”权限后,您将可以编辑存储的 GPO。签出 GPO 之后,可通过右键单击该 GPO 并选择“编辑”菜单选项来编辑它。(注意:如果您只能编辑 AGPM 存档内的某些 GPO,则您可能仅被授予对该存档内的某些 GPO 而非全部 GPO 的委派功能。)

在收购 DesktopStandard 的同时,Microsoft 还获得了 PolicyMaker,现已将其重命名为“组策略首选项”。该“组策略”功能集包含在 Windows Server® 2008 附带的 GPMC 中。“组策略首选项”可让管理员配置那些通常不能使用组策略配置的应用程序或 Windows 组件,并根据一组非常丰富的目标规则将其应用于某些用户或计算机。“组策略首选项”与 Windows Server 2008 中的 GPMC 和 AGPM 完全集成。

AGPM GPO 部署

AGPM 的设计体现了效率和工作流的概念。由于 GPO 管理现在更稳定且使用 AGPM 进行控制,因此可以让管理员只编辑 GPO、但不将其部署到生产中。在 AGPM 内,使用界面、对话框和工作机制非常顺利地控制这一过程。例如,如果具有仅编辑权限的管理员尝试部署 GPO,系统将会拦截它。然后,将为该管理员显示一个对话框,以便其与具有部署委派权限的管理员沟通。此工作流功能可以将电子邮件发送至“收件人:”和“抄送:”收件人,并将 GPO 置于唯一状态中。此唯一状态可在 AGPM 界面的“未决”选项卡下找到。GPO 在那里标记为“未决部署”,以便管理员快速查看已对其执行了操作的每个 GPO 的状态。

要部署未决的 GPO,具有部署委派的 AGPM 管理员只需右键单击该 GPO,然后选择“批准”菜单选项。如果 GPO 需要部署且列在“受控制”而非“未决”选项卡中,则同一管理员只需右键单击该 GPO 并选择“部署”即可。由于已授予此委派权限,因此 GPO 将立即部署到生产中。

AGPM GPO 设置报告和比较

GPMC 界面有一个强大的“设置”对话框,通过同名选项卡可对其进行访问。此“设置”对话框全面描述了在 GPO 中配置的所有设置,从而帮助您搞清楚已配置了大概 3000 个组策略设置中的哪些设置。

由于 AGPM 提供了已修改 GPO 的存档,因此 GPMC 中的“设置”选项卡不允许您查看在已编辑 GPO 中配置的设置。相反,AGPM 界面提供了此功能的替代解决方案以及更多其他功能。

要查看任何 GPO 中的设置,首先查看所有更改的历史列表会大有益处。要获得此视图,请双击 AGPM 中“受控制”选项卡内的任意 GPO。在此界面中,您可以右键单击任意 GPO 版本并选择“设置报告”。这将创建在此版本 GPO 中配置的所有设置的报告。此报告是易于识别的 HTML 文件(尽管它还可以采用 XML 格式创建)。

虽然这个报告很有用,但仍需使用处理程序比较同一 GPO 的两个版本。使用此功能,您可以查看从一个版本到另一版本所更改的内容,或比较同一 GPO 的两个完全不同的版本。(当您具有处于未决部署状态的 GPO 时,这也非常有用,因为它让您看到了未决 GPO 与生产 GPO 之间的差异。)要查看此报告,可突出显示历史视图中的两个不同 GPO,然后右键单击其中之一。

不同报告中的颜色编码极其有用,当您希望在部署之前验证未决 GPO 中发生更改的内容时尤其如此。以红色突出显示的设置已从生产 GPO 中删除,而且在未决 GPO 中不再可用。蓝色设置是已发生的更改,绿色设置是存在于未决 GPO 而非生产 GPO 中的新更改。

AGPM 的此功能可节省大量对 GPO 设置进行费力的手动比较的时间。它还是记录一段时间内的 GPO 的完美方法—每个版本均可报告和打印。

AGPM GPO 灾难恢复

对 GPO 的单一更改可能会导致您网络上的一台或多台计算机严重破坏。使用默认 GPMC,可更正此类型的错误配置—如果在更改生产 GPO 之前及之后采用了正确的手动措施来备份 GPO。如果未进行备份,则从此灾难中恢复并不像想象的那样简单。

AGPM 可轻松地处理此问题。由于有整个 GPO 历史中全部 GPO 的完整备份,因此您可以轻松地展开 GPO 历史,然后选择要重新部署的 GPO 版本。

有了 AGPM,您对“组策略”的管理会变得相当顺畅。多年来,管理员一直希望可以脱机控制和管理 GPO。终于,AGPM 提供了此功能。AGPM 还提供了功能强大的更改管理解决方案,该解决方案不仅可以跟踪已更改 GPO 的关键区域,还提供了简单的 GPO 比较和灾难恢复。在 AGPM 内构建的委派模型允许您将所有管理员引导至 AGPM 中,以在此处进行 GPO 的所有编辑操作,AGPM 可自动备份 GPO 更改并防止出现任何生产 GPO 灾祸。此服务还具有许多功能,在此不再讨论全部功能,但 AGMP 手册中提供了大量有关模板、节点链接恢复、SMTP 配置等的信息。

Derek Melber 是独立的顾问、培训师及作家。Derek 负责讲授和推广 Microsoft 技术,主要是 Active Directory、组策略、安全性以及桌面管理。Derek 定期编著在线及印刷出版物,他已编写了 10 多本技术书籍,其中包括《Microsoft Windows Group Policy Guide》(Microsoft Windows 组策略指南)(Microsoft Press, 2005)。您可以通过 derekm@braincore.net 与 Derek 联系。

© 2008 Microsoft Corporation 与 CMP Media, LLC.保留所有权利;不得对全文或部分内容进行复制.