自动管理 GPO
大中型企业中的 IT 专业人员通常需要创建许多 GPO,用于定义从计算机桌面到屏幕保护程序超时的计算机设置。 Microsoft 提供的组策略对象编辑器和组策略管理控制台 (GPMC) 工具可使管理员创建和更新 GPO。 但是,由于存在数以千计可能的设置,更新多个 GPO 将是一项耗时、重复且容易出错的任务。
在 Windows 7 之前的版本中,自动执行 GPO 仅限于 GPO 管理本身。 例如,IT 专业人员可以创建或链接 GPO,但是不能更改其中的配置设置。 若要访问 GPMC 应用程序编程接口 (API),还需要应用程序开发人员的技能集。
在安装 Windows Server 2008 R2 远程服务器管理工具 (RSAT)(可从包含面向 Windows 7 的 GPMC 的 microsoft.com 下载)后,可以使用 PowerShell 实现自动执行 GPO 管理和基于注册表设置的配置(可通过 ADM 或 ADMX 管理模板获取这些设置)。 此功能可使 IT 专业人员通过下列 cmdlet 完全控制 GPO:
GPO Cmdlet
Backup-GPO | Block-GPInheritance | Copy-GPO | Get-GPO | Get-GPOReport |
Get-GPPermissions | Get-GPPrefRegistryValue | Get-GPRegistryValue | Get-GPResultantSetOfPolicy | Get-GPStarterGPO |
Import-GPO | New-GPLink | New-GPO | New-GPStarterGPO | Remove-GPLink |
Remove-GPO | Remove-GPPrefRegistryValue | Remove-GPRegistryValue | Rename-GPO | Restore-GPO |
Set-GPLink | Set-GPPermissions | Set-GPPrefRegistryValue | Set-GPRegistryValue | Get-GPInheritance |
可能您的组织需要针对多个业务部门创建不同的 GPO,并且每个 GPO 都根据下列两个不同的设置而变化:屏幕保护程序开始前的延迟以及解锁屏幕保护程序是否需要密码。 在拥有 6 个业务部门的组织中,每个部门都有不同的业务要求,管理员通常需要为每个部门手动创建 GPO 并在 UI 中定义设置,这是一项非常耗时的任务。 通过使用 Windows 7 和 PowerShell,管理员能够编写使用数组的 PowerShell 脚本,该数组包含业务单位名称和唯一 GPO 设置。 然后该脚本将循环访问数组,并在迅速创建所有的 GPO。
通过组策略执行 PowerShell
随 Windows 2000 交付的组策略允许管理员在用户登录或注销以及计算机启动和关机时执行基于批处理文件的脚本。 从而使管理员在这段时间内配置环境部件或执行其他程序。 Windows 7 同样引入对执行 PowerShell 脚本的支持,它为管理员提供了更全面的工具,支持他们在这些系统事件期间进行实时配置。