Azure Custom Policy – VM Naming Convention

O Azure Custom Policy faz parte do Azure Policy, um serviço que ajuda a gerenciar e aplicar governança nos recursos do Azure. O Azure Policy permite criar, atribuir e gerenciar políticas para garantir que os recursos estejam em conformidade com os requisitos organizacionais.

O Custom Policy refere-se às políticas personalizadas que você pode criar quando as políticas internas do Azure não atendem às suas necessidades específicas.

🔹 Principais Características:

  • Personalização: Diferente das políticas internas do Azure, as Custom Policies são feitas sob medida para atender às necessidades específicas da organização.
  • Estrutura baseada em JSON: As políticas são definidas em arquivos JSON contendo regras (conditions) e ações (effects).
  • Efeitos variados: Pode negar a criação de recursos, auditar o ambiente ou modificar configurações automaticamente.
  • Escopo flexível: Aplicável em assinaturas, grupos de gerenciamento e recursos específicos.

🔹 Quando aplicar um Azure Custom Policy?

🔹 Restringir tipos de VMs para evitar instâncias muito caras.
🔹 Forçar tags obrigatórias em recursos para facilitar o gerenciamento e custos.
🔹 Impedir uso de IPs públicos em máquinas virtuais por questões de segurança.
🔹 Enforçar criptografia de discos para atender requisitos de conformidade.
🔹 Garantir que recursos sejam criados em locais aprovados (ex.: evitar regiões bloqueadas).

🔹 Diferença entre Azure Policy e RBAC

Embora o Azure Policy e o RBAC (Role-Based Access Control) sejam ferramentas de governança, eles possuem propósitos distintos:

Azure Policy foca na conformidade e governança, garantindo que os recursos sigam regras específicas. Exemplo: impedir a criação de VMs fora de uma região específica.

RBAC foca no controle de acesso, determinando quem pode fazer o quê no Azure. Exemplo: permitir que um usuário tenha acesso de leitura a um grupo de recursos.

📌 Resumo da diferença:

  • Azure Policy → O que pode ou não ser configurado nos recursos.
  • RBAC → Quem tem permissão para fazer algo nos recursos.

Criar um Azure Custom Policy para padronizar a nomenclatura de suas VM’s no Azure:

Acesse meu Github e faça o download do Script JSON que define uma nomenclatura padrão de nomes de VMs:

https://github.com/Fabio-Junio/Azure-VM-Naming-Convention—Padrao-de-Nomes/tree/main

De acordo com definição do script as VMs deverão seguir esse padrão de nomenclatura:

vm-XXXX-XXX-123

Segue exemplos que são válidos:

vm-ADDS-prd-001

vm-sqlx-hml-002

vm-appx-dev-003

Segue o detalhe do script:

{
  "displayName": "VM - padrao de nomenclatura",
  "policyType": "Custom",
  "mode": "All",
  "version": "1.0.0"
}

displayName: Nome amigável da política, indicando que ela define um padrão de nomenclatura para VMs.

policyType: Custom significa que essa política foi criada pelo usuário, não é uma das políticas padrão da Microsoft.

mode: All significa que a política pode ser aplicada tanto a recursos existentes quanto a novos.

version: Indica a versão da política.

Regras da Política (policyRule) A política usa uma condição if para verificar se a VM segue o padrão de nomenclatura. Se não seguir, o then bloqueia a criação.

Condição (if)

"if": {
  "allOf": [
    {
      "field": "type",
      "equals": "Microsoft.Compute/virtualMachines"
    },
    {
      "allOf": [
        {
          "field": "name",
          "notMatch": "vm-????-...-###"
        }
      ]
    }
  ]
}

field: “type”, equals: “Microsoft.Compute/virtualMachines”

Aplica-se apenas a VMs.

field: “name”, notMatch: “vm-????-…-###”

O nome da VM deve seguir um padrão específico.

notMatch” significa que, se o nome da VM não seguir esse padrão, a regra será acionada.

O padrão “vm-????-…-###” provavelmente representa:

vm– → Prefixo fixo.

???? → Quatro caracteres obrigatórios (letras ou números).

→ Pode indicar um conjunto de caracteres obrigatórios.

### – Três números obrigatórios.

Ação (then)

"then": {
  "effect": "deny"
}

effect: “deny” impede a criação da VM se ela não seguir o padrão de nomenclatura.

Resumo A política força um padrão de nomenclatura para Máquinas Virtuais (VMs) no Azure.

Se o nome da VM não seguir o formato “vm-????-…-###”, a criação será negada.

Isso ajuda a manter um padrão organizacional e facilitar a identificação das VMs.

Vejam o vídeo no meu canal Azure Xplorer onde mostro como configurar essa Custom Policy – VM Naming Convention.

Fonte:

Azure Policy – Microsoft Learn

https://learn.microsoft.com/pt-br/azure/governance/policy/overview

CAF – Defina sua convenção de nomes para seus recursos

https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/resource-naming

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *