top of page

Criar e Atribuir uma Azure Policy que Usa a Extensão de Configuração de Máquina

  • Foto do escritor: Rodrigo Motta
    Rodrigo Motta
  • 20 de out.
  • 4 min de leitura

Introdução

O Azure Policy é uma das ferramentas mais poderosas para garantir governança e conformidade dentro do ambiente Azure. Ele permite criar políticas que auditam, restringem e até remediam automaticamente configurações de recursos, garantindo que tudo esteja dentro dos padrões definidos pela organização.

Mas, em alguns cenários, precisamos ir além da simples validação de propriedades — é necessário configurar diretamente a máquina virtual (VM) para atender a um requisito. É aí que entra a Extensão de Configuração de Máquina (Guest Configuration) — uma extensão que aplica e monitora configurações dentro do sistema operacional convidado.

Neste artigo, vamos aprender como criar e atribuir uma Azure Policy que utiliza a extensão de configuração de máquina, cobrindo desde o conceito até a prática.

O que é a Extensão de Configuração de Máquina (Guest Configuration)?

A Guest Configuration Extension é um agente que roda dentro da VM e coleta informações de conformidade sobre o sistema operacional, aplicativos e configurações específicas, como:

  • Versões de software instaladas

  • Configurações de segurança do Windows/Linux

  • Políticas locais (senha, firewall, auditoria, etc.)

  • Membros de grupos administrativos

Ela é usada em conjunto com o serviço Azure Policy – Guest Configuration, permitindo auditar e até remediar configurações internas de máquinas sem precisar de scripts manuais.

Cenários de Utilização Prática

A Azure Policy com Guest Configuration pode ser aplicada em diversos cenários corporativos e de compliance, especialmente quando há a necessidade de inspecionar ou impor configurações dentro do sistema operacional.

Abaixo, alguns exemplos reais:

1. Segurança e Compliance

  • Garantir que o Firewall do Windows esteja habilitado em todas as VMs.

  • Validar se o antivírus corporativo está instalado e ativo.

  • Confirmar que a criptografia de disco (BitLocker) está aplicada.

  • Garantir que a política de Complexidade de Senhas esteja conforme os padrões internos.

2. Padronização de Ambientes

  • Verificar se todas as VMs possuem scripts de inicialização corporativos aplicados.

  • Assegurar que o servidor de hora (NTP) está configurado corretamente.

  • Garantir que o Windows Update está ativo e usando o servidor WSUS corporativo.

3. Governança Híbrida (Azure + On-Premises)

  • Monitorar e aplicar políticas de segurança em servidores on-premises conectados via Azure Arc.

  • Auditar configurações de compliance em servidores Linux fora do Azure.

4. Auditorias e Relatórios

  • Validar a conformidade com normas ISO 27001, CIS Benchmarks ou LGPD.

  • Gerar relatórios automáticos para equipes de segurança e auditoria interna.

Em resumo:

Sempre que houver uma configuração que precise ser monitorada ou padronizada dentro da VM, a Azure Policy com a Extensão de Configuração de Máquina é a melhor solução.

Pré-requisitos

Antes de criar e aplicar uma política que usa a extensão de configuração de máquina, verifique se os seguintes requisitos estão atendidos:

  1. A VM precisa estar conectada ao Azure Arc (para servidores híbridos) ou ser uma VM Azure.

  2. A extensão Guest Configuration deve estar instalada.

  3. Você precisa ter permissões de Owner, Contributor ou Policy Contributor na assinatura ou grupo de recursos.

  4. O provedor de recursos Microsoft.GuestConfiguration deve estar registrado:

az provider register --namespace Microsoft.GuestConfiguration

Criando e Atribuindo uma Azure Policy com Extensão de Configuração de Máquina

1. Criar a Definição da Política

No portal do Azure:

  1. Vá em Azure Policy → Definições → + Definição de Política.

  2. Preencha:

    • Nome: “Verificar Configuração de Firewall do Windows”

    • Descrição: “Audita se o Firewall do Windows está habilitado dentro da VM.”

    • Categoria: Segurança ou Governança

  3. Selecione o tipo Guest Configuration e insira o JSON abaixo:

{
  "properties": {
    "displayName": "Verificar Firewall do Windows",
    "policyType": "BuiltIn",
    "mode": "Indexed",
    "metadata": {
      "category": "Guest Configuration"
    },
    "parameters": {},
    "policyRule": {
      "if": {
        "field": "type",
        "equals": "Microsoft.Compute/virtualMachines"
      },
      "then": {
        "effect": "auditIfNotExists",
        "details": {
          "type": "Microsoft.GuestConfiguration/guestConfigurationAssignments",
          "name": "WindowsFirewall",
          "existenceCondition": {
            "field": "Microsoft.GuestConfiguration/guestConfigurationAssignments/complianceStatus",
            "equals": "Compliant"
          }
        }
      }
    }
  }
}

2. Atribuir a Política

  1. Vá até Azure Policy > Atribuições > + Atribuir Política.

  2. Escolha o escopo (assinatura, grupo de recursos ou Management Group).

  3. Selecione a política criada.

  4. Em Modo de Conformidade, escolha “Audit” ou “DeployIfNotExists”.

  5. Clique em Revisar + Criar.

3. Instalar a Extensão de Configuração de Máquina

Caso a VM não tenha a extensão, instale manualmente via CLI:

az vm extension set `
  --publisher Microsoft.GuestConfiguration `
  --name ConfigurationForWindows `
  --vm-name NOME-DA-VM `
  --resource-group NOME-DO-RG

Ou no portal:VM → Extensões + Aplicativos → Adicionar → Guest Configuration Extension

4. Monitorar Conformidade

Após a atribuição, o Azure iniciará a avaliação de conformidade. Para visualizar:

  • Vá em Azure Policy → Conformidade

  • Selecione a política “Verificar Firewall do Windows”

  • Veja o status das VMs (Compliant ou Non-Compliant)

Política DeployIfNotExists (Remediação Automática)

Exemplo de política que implanta automaticamente a extensão nas VMs sem Guest Configuration:

"then": {
  "effect": "deployIfNotExists",
  "details": {
    "type": "Microsoft.Compute/virtualMachines/extensions",
    "roleDefinitionIds": [
      "/providers/microsoft.authorization/roleDefinitions/contributor"
    ],
    "existenceCondition": {
      "field": "Microsoft.Compute/virtualMachines/extensions/typeHandlerVersion",
      "equals": "1.*"
    },
    "deployment": {
      "properties": {
        "mode": "incremental",
        "template": {
          "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
          "contentVersion": "1.0.0.0",
          "resources": [
            {
              "type": "Microsoft.Compute/virtualMachines/extensions",
              "name": "[concat(parameters('vmName'), '/ConfigurationForWindows')]",
              "apiVersion": "2020-06-01",
              "location": "[parameters('location')]",
              "properties": {
                "publisher": "Microsoft.GuestConfiguration",
                "type": "ConfigurationForWindows",
                "typeHandlerVersion": "1.29",
                "autoUpgradeMinorVersion": true
              }
            }
          ]
        }
      }
    }
  }
}

Fluxo de Funcionamento

+-------------------+
| Azure Policy      |
| (Definição e      |
|  Atribuição)      |
+---------+---------+
          |
          v
+-----------------------------+
| Guest Configuration Policy  |
| (Audita ou Aplica Config)   |
+-------------+---------------+
              |
              v
+-----------------------------+
| Extensão Guest Configuration|
| (Executa dentro da VM)      |
+-------------+---------------+
              |
              v
+-----------------------------+
| Relatório de Conformidade   |
| (Azure Portal / Policy)     |
+-----------------------------+

Boas Práticas

  • Utilize nomes e categorias padronizadas nas políticas.

  • Combine Azure Policy + Defender for Cloud para melhor visibilidade.

  • Prefira políticas Built-in antes de criar personalizadas.

  • Use DeployIfNotExists com cautela — ele executa ações automáticas.

Conclusão

A Azure Policy com Extensão de Configuração de Máquina é uma solução robusta para aplicar padrões de governança dentro do sistema operacional. Com ela, você não apenas audita configurações, mas também pode remediar automaticamente desvios de conformidade, reforçando a segurança, padronização e governança em todo o ambiente — seja Azure nativo ou híbrido com Azure Arc.

Posts recentes

Ver tudo
Azure Update Manager

Conforme prometido, vamos explorar o Azure Update Manager , uma solução integrada da Microsoft que simplifica o gerenciamento de...

 
 
 

Comentários


bottom of page