Avaliar o impacto de uma nova definição de Política do Azure

A Política do Azure é uma ferramenta poderosa para gerenciar seus recursos do Azure para atender às necessidades de conformidade com os padrões de negócios. Quando pessoas, processos ou pipelines criam ou atualizam recursos, o Azure Policy revê o pedido. Quando o efeito de definição de política é Modificar, Acrescentar ou DeployIfNotExists, a Política altera a solicitação ou adiciona a ela. Quando o efeito de definição de política é Audit ou AuditIfNotExists, Policy faz com que uma entrada de log de atividades seja criada para recursos novos e atualizados. E quando o efeito de definição de política é Deny ou DenyAction, Policy interrompe a criação ou alteração da solicitação.

Estes resultados são exatamente como desejado quando sabemos que a política está corretamente definida. No entanto, é importante validar que uma nova política funciona como pretendido antes de permitir que ela seja alterada ou bloqueada o trabalho. A validação deve garantir que apenas os recursos pretendidos são determinados como não conformes e que nenhum recurso compatível é incluído incorretamente (conhecido como falso positivo) nos resultados.

A abordagem recomendada para validar uma nova definição de política é seguir estas etapas:

  • Defina rigorosamente a sua política
  • Testar a eficácia da sua política
  • Auditar solicitações de recursos novas ou atualizadas
  • Implantar sua política em recursos
  • Monitorização contínua

Defina rigorosamente a sua política

É importante entender como a política de negócios é implementada como uma definição de política e a relação dos recursos do Azure com outros serviços do Azure. Esta etapa é realizada identificando os requisitos e determinando as propriedades do recurso. Mas também é importante ver além da definição restrita da sua política de negócios. Sua política declara, por exemplo, "Todas as máquinas virtuais devem..."? E quanto a outros serviços do Azure que usam VMs, como HDInsight ou AKS? Ao definir uma política, devemos considerar como essa política afeta os recursos que são usados por outros serviços.

Por esse motivo, suas definições de política devem ser o mais rigorosamente definidas e focadas nos recursos e nas propriedades que você precisa avaliar para fins de conformidade quanto possível.

Testar a eficácia da sua política

Antes de procurar gerenciar recursos novos ou atualizados com sua nova definição de política, é melhor ver como ela avalia um subconjunto limitado de recursos existentes, como um grupo de recursos de teste. A extensão VS Code da Política do Azure permite testes isolados de definições em relação aos recursos existentes do Azure usando a verificação de avaliação sob demanda. Você também pode atribuir a definição em um ambiente de desenvolvimento usando o modode imposição Desabilitado (DoNotEnforce) em sua atribuição de política para impedir que o efeito seja acionado ou que entradas de log de atividades sejam criadas.

Esta etapa oferece a oportunidade de avaliar os resultados de conformidade da nova política sobre os recursos existentes sem afetar o fluxo de trabalho. Verifique se nenhum recurso compatível aparece como não compatível (falso positivo) e se todos os recursos que você espera que não estejam em conformidade estão marcados corretamente. Depois que o subconjunto inicial de recursos for validado conforme o esperado, expanda lentamente a avaliação para mais recursos existentes e mais escopos.

A avaliação dos recursos existentes desta forma constitui também uma oportunidade para remediar os recursos não conformes antes da plena aplicação da nova política. Essa limpeza pode ser feita manualmente ou por meio de uma tarefa de correção se o efeito de definição de política for DeployIfNotExists ou Modify.

As definições de política com um DeployIfNotExist devem aproveitar o modelo do Azure Resource Manager para validar e testar as alterações que acontecem ao implantar o modelo ARM.

Auditar recursos novos ou atualizados

Depois de validar que sua nova definição de política está relatando corretamente os recursos existentes, é hora de examinar o impacto da política quando os recursos forem criados ou atualizados. Se a definição de política oferecer suporte à parametrização de efeitos, use Audit ou AuditIfNotExist. Essa configuração permite monitorar a criação e a atualização de recursos para ver se a nova definição de política dispara uma entrada no log de atividades do Azure para um recurso que não está em conformidade sem afetar o trabalho ou as solicitações existentes.

É recomendável atualizar e criar novos recursos que correspondam à sua definição de política para ver se o efeito Audit ou AuditIfNotExist está sendo acionado corretamente quando esperado. Esteja atento às solicitações de recursos que não devem ser afetadas pela nova definição de política que aciona o efeito Audit ou AuditIfNotExist . Esses recursos afetados são outro exemplo de falsos positivos e devem ser corrigidos na definição da política antes da implementação completa.

Caso a definição de política seja alterada nesta etapa de teste, recomenda-se iniciar o processo de validação com a auditoria dos recursos existentes. É provável que uma alteração à definição de política para um falso positivo em recursos novos ou atualizados também tenha um impacto nos recursos existentes.

Implantar sua política em recursos

Depois de concluir a validação de sua nova definição de política com recursos existentes e solicitações de recursos novas ou atualizadas, você inicia o processo de implementação da política. É recomendável criar a atribuição de política para a nova definição de política para um subconjunto de todos os recursos primeiro, como um grupo de recursos. Você pode filtrar ainda mais por tipo de recurso ou local usando a resourceSelectors propriedade dentro da atribuição de política. Depois de validar a implantação inicial, estenda o escopo da política para mais amplo como um grupo de recursos. Depois de validar a implantação inicial, expanda o impacto da política ajustando os filtros resourceSelector para direcionar mais locais ou tipos de recursos, ou removendo a atribuição e substituindo-a por uma nova em escopos mais amplos, como assinaturas e grupos de gerenciamento. Continue essa implantação gradual até que ela seja atribuída ao escopo completo de recursos destinados a serem cobertos pela sua nova definição de política.

Durante a implantação, se houver recursos que devam ser isentos de sua nova definição de política, aborde-os de uma das seguintes maneiras:

  • Atualizar a definição de política para ser mais explícita e reduzir o impacto não intencional
  • Alterar o escopo da atribuição de política (removendo e criando uma nova atribuição)
  • Adicionar o grupo de recursos à lista de exclusão para a atribuição de política

Quaisquer alterações no escopo (nível ou exclusões) devem ser totalmente validadas e comunicadas às suas organizações de segurança e conformidade para garantir que não haja lacunas na cobertura.

Monitore sua política e conformidade

Implementar e atribuir sua definição de política não é a etapa final. Monitore continuamente o nível de conformidade dos recursos para sua nova definição de política e configure alertas e notificações apropriados do Azure Monitor para quando dispositivos não compatíveis forem identificados. Também é recomendável avaliar a definição de política e as atribuições relacionadas de forma programada para validar se a definição de política está atendendo às necessidades de conformidade e política de negócios. As políticas devem ser removidas se não forem mais necessárias. As políticas também precisam ser atualizadas periodicamente à medida que os recursos subjacentes do Azure evoluem e adicionam novas propriedades e recursos.

Próximos passos