Automatizando o gerenciamento de GPOs

Aproveitando o assunto automação, tema do meu último post, decidi abordar novamente um recurso que mesmo já bem conhecido nas versões anteriores do Windows Server, constitue numa ferramenta fundamental para o processo de automação da infra de TI.

Os profissionais de TI de organizações médias e grandes normalmente precisam criar muitas GPOs para definir as configurações do computador, que variam da área de trabalho ao tempo limite da proteção de tela. A Microsoft oferece as ferramentas Editor de Objeto de Diretiva de Grupo e GPMC (Group Policy Management Console - Console de Gerenciamento de Diretiva de Grupo) para que os administradores possam criar e atualizar os GPOs. No entanto, como há milhares de configurações possíveis, a atualização de múltiplos GPOs pode ser demorada, repetitiva e sujeita a erros.

Antes do Windows 7, a automação de GPOs se limitava ao seu gerenciamento. Por exemplo, os profissionais de TI podiam criar ou conectar um GPO, mas não podiam alterar as configurações dentro deles. O acesso às APIs (application programming interfaces – interfaces de programação de aplicações) do GPMC também exigia as habilidades de um desenvolvedor.

Depois de instalar a RSAT (Remote Server Administration Tools - Ferramentas de Administração de Servidor Remoto) do Windows Server 2008 R2, um download do microsoft.com que inclui o GPMC para Windows 7, você pode usar o PowerShell para automatizar tanto o gerenciamento de GPOs como a elaboração de configurações baseadas em registro (disponíveis através dos modelos administrativos ADM ou ADMX). Essa funcionalidade permite aos profissionais de TI assumir total controle dos GPOs, usando estes cmdlets:

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

Talvez sua organização precise criar GPOs diferentes para múltiplas unidades de negócios, e cada GPO varia de acordo com duas configurações: o tempo de espera até o início da proteção de tela, e a exigência ou não de uma senha para desbloqueá-la. Em uma organização com seis unidades de negócios, cada uma com requisitos diferentes, os administradores normalmente têm que criar os GPOs manualmente e definir as configurações para cada um, dentro da interface de usuário, o que pode ser muito demorado. Com o Windows 7 e o PowerShell, o administrador pode escrever um script que use uma matriz contendo os nomes das unidades de negócios e configurações de GPO exclusivas. O script pode então iterar através da matriz e criar cada GPO em questão de segundos.

Um abraço,

Rodrigo Dias (Twitter: https://twitter.com/rodrigodias73)