我几乎每天都收到电子邮件,询问我“新版本 Windows 中的组策略将新增什么功能?”通过这个问题,我可以感觉到人们迫切希望了解新增功能和更改对 IT 专业人员有什么意义。
我知道变化有时会给人造成压力,但是我可以信心十足地说这些新增功能都非常不错:Windows 7 和 Windows Server 2008 R2 中包括一些功能强大、简洁的组策略更改,但是这些更改并不是根本性的更改,或者说与以前没有太大区别。IT 专业人员不需要经历令人头痛的高难度学习历程,就可以从一些更新、新增功能和用户界面调整等内容中获益。
组策略更改可分为两大类。第一类是组策略团队提供的项目:核心功能,包括组策略引擎和组策略编辑系统(组策略管理控制台,简称 GPMC;和组策略管理编辑器,简称 GPME)中的新增和更新功能。第二类是其他团队提供的、用于管理他们使用组策略的组件的项目:更新的策略设置和 GPME 中的功能控件,我们都使用这些控件来管理目标计算机上的新增和更新的功能。在本文中,我对这两种更改都做了介绍。
更新的组策略核心功能
对于 Windows 7 和 Windows Server 2008 R2,组策略团队研究了大量功能和更新。以下内容对 Windows 最新更新中提供的内容进行了非科学分类:一个大型修补程序、一个大型更新、一个大型新增功能、一个大型用户界面更改和一个大型附带补充。
大型修补程序:更新的筛选器
更新后的 GPMC 中的更新筛选器(适用于 Windows 7 和 Windows Server 2008 R2)这项更改很受欢迎。这些修补程序解决了自 Windows Vista 发布以来一直悬而未决的一个错误。在图 1 中,您可以看到我最喜爱的功能之一,此功能包含在远程服务器管理工具 (RSAT) 中,自从更新 GPMC 后就一直可用:“筛选器选项”对话框。
图 1“筛选器选项”对话框。
RSAT 的任务很简单:允许您使用 Vista(或更高版本)计算机控制网络的各个方面,从您使用的计算机到提供执行此操作所需的工具,包括更新的 GPMC。这个更新的 GPMC 提供了一些简洁的功能;其中之一就是使用筛选器定义条件,这些条件用于仅查找您所需的“管理模板组策略”设置。但问题在于,当使用 Vista 及其相应的 RSAT 时,这些筛选器就不能运行,出现一个令管理员头疼的错误。
我来稍微详细地解释一下这个错误。图 1 显示了“筛选器”对话框中的“启用需求筛选器”部分。该部分的目标很简单:就是帮助您了解哪些管理模板策略设置对特定操作系统有效。
“启用条件筛选器”中的一种模式是“包括与所有选定平台匹配的设置”。另一种模式是“包括与任何选定平台匹配的设置”。从表面看,这两种模式非常相似。但是主要区别在于“所有”和“任何”。以下是当您选择每种模式并指定一些条件后,每种模式应该执行的任务:
“包括与所有选定平台匹配的设置”应该显示仅在指定类型的计算机上才有效的策略设置。因此,如果您选择 Windows XP Service Pack (SP) 2 和 Vista,显示的结果应该是仅在 Windows XP SP2 和 Vista 上运行的策略设置。
“包括与任何选定平台匹配的设置”应该显示适用于任何选定操作系统的设置。因此,如果您选择 Windows XP SP2 和 Vista 两者,应该显示适用于 Windows XP SP2 的所有设置以及适用于 Vista 的所有设置。
这两种筛选器的作用名副其实。唯一的问题是,使用 Vista 和 Windows Server 2008 版本的 RSAT 时,两者都不能正常运行。如果选择了“包括与所有选定平台匹配的设置”,结果中通常仅有一小部分是真正适用于目标计算机的有效设置,而如果您选择“包括与任何选定平台匹配的设置”,则不会显示任何结果。
据我在组策略团队中的朋友们所说,此修补程序应该属于 Windows 7 的最终可下载版本的 RSAT 和 Windows Server 2008 R2 的系统自带 RSAT 的一部分。
大型更新:将 Windows PowerShell 脚本部署到目标计算机
只要您的消息不闭塞,就应该了解 Windows PowerShell 正日益受到系统管理员的青睐。但是一个问题却妨碍了一些管理员使用 PowerShell。至今还没有找到一种简单的方法,帮助管理员在他们最需要控制的领域利用 PowerShell 的新增功能:用户和计算机脚本。
Windows 7 和 Windows Server 2008 R2 中的 RSAT 允许管理员将 PowerShell 脚本指定为登录或注销脚本(对于用户)和启动或关闭脚本(对于计算机)。图 2 显示 GPME 中的“开始属性”对话框,管理员可以在其中指定 PowerShell 脚本的运行顺序,还可以指定应该首先运行哪种脚本类型:PowerShell 脚本或非 PowerShell 脚本(这种脚本没有显示,位于“开始属性”对话框中的“脚本”选项卡中)。
图 2 “开始属性”对话框中的“Windows PowerShell 脚本”选项卡。
要使用此功能,您需要使用相应的 RSAT 工具(包含支持此新功能的更新的 GPMC),创建或编辑 Windows 7 或 Windows Server 2008 R2 计算机上的组策略对象 (GPO)。此外,运行 PowerShell 脚本的目标计算机必须是 Windows 7 或 Windows Server 2008 R2。更旧版本的计算机(即使加载了 PowerShell)是无效的目标计算机,不能运行 PowerShell 登录、注销、启动或者关闭脚本。如果您需要将 PowerShell 脚本部署到非 Windows 7 计算机,可以借助某些第三方解决方案。
大型功能:使用 PowerShell Cmdlet 处理注册表设置
许多系统管理员喜欢周围的事物自动进行。这是件好事。实际上,您可以考虑在您的环境中利用组策略,实现客户端计算机的大量自动化(这样,您就不必忙忙碌碌执行大量操作)。要将管理工作提升一个级别,您可能希望 GPO 实现自动处理。
一些管理员已经利用现有组策略 GPMC 示例脚本自动执行主要组策略任务。