Governança de Custos no Azure: Garantindo a Conformidade de Tags com Policy Definitions

A governança de custos é um pilar essencial do framework Cloud Adoption Framework (CAF). No Microsoft Azure, a utilização de é o principal ferramenta para organizar recursos, permitindo a visibilidade de custos por departamento, projeto, ambiente ou centro de custo.

Este guia técnico detalha como utilizar o Azure Policy para automatizar a conformidade dessas tags com Policy Definitions.

Os objetivos resumem em:

  • Garantir que todo recurso criado possua tags obrigatórias.
  • Automatizar a correção de recursos sem tags (remediação).
  • Facilitar a análise de faturamento no Azure Cost Management.
  • Prevenir a dispersão de custos (Cloud Sprawl).

Estratégia de Tags Recomendada

Antes de aplicar as políticas, define-se um padrão mínimo. Exemplos comuns:

  • CentroDeCusto: Identificação da unidade financeira.
  • Ambiente: (Ex: Prod, Dev, Homolog).
  • Projeto: Nome do projeto associado.
  • Proprietario: Responsável pelo recurso.
  • Setor: Setor responsável pelo recurso.
  • Área: Área responsável pelo recurso.

Implementação com Azure Policy Definition

O Azure Policy utiliza definições JSON para avaliar recursos.

Vamos utilizar Policy Definition: Herdar Tag do Grupo de Recursos

Muitas vezes, os recursos devem herdar a tag do seu respectivo Resource Group (RG).

  • Efeito: Modify (Modificar).
  • Lógica: Se o recurso for criado sem a tag “X”, a política busca o valor no RG e aplica automaticamente ao recurso.

Vamos ao passo-a-passo desta implementação:

1º Passo

Como exemplo, vou definir um grupo de recursos vazio já com as tags definidas pela equipe de Azure e pelo negócio para identificar os recursos. Vale salientar que você pode utilizar a ferramenta Azure Naming Tool para apoiar na definição das etiquetas e dos nomes dos grupos e recursos.

https://resourcenamegenerator.azurewebsites.net/

Neste exemplo, utilizando a estratégia já apresentada acima sobre as tags no grupo de recursos, ficaria desta forma:

Neste Grupo de Recursos, há recursos criados sem tag, como este storage na imagem abaixo. A ideia é que esses recursos herdem as tags acima por meio de Policy Definitions.

json – Política para múltiplas tags.

Script completo está neste repositório – https://github.com/ErickMedeiros/tagsrgrecursos

Vamos colar em um bloco de notas e seguir para a criação da Policy Definition:

O primeiro passo é escolher em qual assinatura a definição será aplicada. Em seguida, defina o nome da política, a descrição, selecione uma categoria da política — neste caso, a categoria Tags — e cole o JSON conforme abaixo.

Obs.: Limpe todos as informações antes de colar.

Nas configurações da Policy, definimos o nome “Aplicar tags do RG aos recursos” e a seguinte descrição: “Adiciona ou substitui as tags nos recursos para que correspondam às tags do grupo de recursos pai.” Além disso, escolhemos uma categoria para ela: Tags.

Ainda no detalhe, selecione a role de Contributor e clique em salvar.

Policy Definition criada com sucesso.

Um passo importante antes de seguir com a configuração é verificar se, na Subscription, o Resource Provider Policy.Insights está registrado. Caso não esteja, registre-o.

Passo agora é seguir com a implantação da politica no Ambiente.

Colocamos neste exemplo a política no escopo da assinatura, não colocamos nenhum grupo de recursos na exclusão. Na busca pela Policy Definition buscamos pelo nome da política criada anteriormente. Descrição e enforce habilitado

Clique em next

Segue para o proximo passo, onde os parametros já estão configurados

Na guia de remediação, essa ação criará uma tarefa na qual a política localizará recursos não conformes dentro do Grupo de Recursos e aplicará (associará) as tags.

Há politica irá criar uma Identidade gerenciada com a TAG de Contributor para ter a permissão de aplicar as etiquetas nos recursos.

Não irei definir nenhuma mensagem.

Finalizando a configurações da Politica.

Política associada a assinatura com sucesso:

A política iniciará uma busca por recursos não conformes. Vale lembrar que esse processo pode levar algum tempo — 5 min, 10 min, 15 min ou 20 min — dependendo do ambiente, podendo até levar horas.

Aqui, os recursos não conformes foram localizados e a política iniciará a remediação. Neste momento, nenhum recurso tem tags aplicadas.

Após algum tempo a remediação foi aplicada e os recursos agora estão em conformidade.

Utilizando o exemplo desta máquina virtual que está provisionada dentro do grupo de recursos, ela herdou as tags aplicadas pela política.

Conclusão

A conformidade de tags via Azure Policy não é apenas uma tarefa técnica, mas uma estratégia financeira. Ao garantir que todos os recursos sejam devidamente etiquetados no momento da criação ou até mesmo após, a organização ganha visibilidade total sobre seus gastos e governança, permitindo uma otimização contínua e uma operação de nuvem mais madura.