O que é o Azure Policy?
O Azure Policy ajuda a impor normas organizacionais e a avaliar o cumprimento em escala. Através do dashboard de conformidade, proporciona uma visão agregada para avaliar o estado geral do ambiente, com a capacidade de desagregar a granularidade por recurso e por política. Também ajuda a fazer com que os recursos fiquem em conformidade através da remediação em massa dos recursos existentes e da reparação automática dos recursos novos.
Nota
Para obter mais informações sobre correção, consulte Corrigir recursos não compatíveis com a Política do Azure.
Casos comuns de utilização do Azure Policy incluem a implementação de governação para consistência de recursos, conformidade regulamentar, segurança, custos e gestão. As definições de políticas para estes casos comuns de utilização já estão disponíveis no ambiente do Azure como incorporações para o ajudar a iniciar.
Especificamente, algumas ações de governança úteis que você pode aplicar com a Política do Azure incluem:
- Garantir que sua equipe implante recursos do Azure somente em regiões permitidas
- Aplicando a aplicação consistente de tags taxonômicas
- Exigir recursos para enviar logs de diagnóstico para um espaço de trabalho do Log Analytics
É importante reconhecer que, com a introdução do Azure Arc, você pode estender sua governança baseada em políticas em diferentes provedores de nuvem e até mesmo para seus datacenters locais.
Todos os dados e objetos da Política do Azure são criptografados em repouso. Para obter mais informações, consulte Criptografia de dados do Azure em repouso.
Descrição geral
O Azure Policy avalia recursos e ações no Azure comparando as propriedades desses recursos com as regras de negócios. Essas regras de negócios, descritas no formato JSON, são conhecidas como definições de política. Para simplificar a gestão, várias regras de negócio podem ser agrupadas para formar uma iniciativa política (por vezes designada por conjunto de políticas). Depois que suas regras de negócios forem formadas, a definição ou iniciativa de política será atribuída a qualquer escopo de recursos suportados pelo Azure, como grupos de gerenciamento, assinaturas, grupos de recursos ou recursos individuais. A atribuição aplica-se a todos os recursos dentro do escopo do Gerenciador de Recursos dessa atribuição. Os subâmbitos podem ser excluídos, se necessário. Para obter mais informações, consulte Escopo na Política do Azure.
A Política do Azure usa um formato JSON para formar a lógica que a avaliação usa para determinar se um recurso é compatível ou não. As definições incluem metadados e a regra de política. A regra definida pode usar funções, parâmetros, operadores lógicos, condições e aliases de propriedade para corresponder exatamente ao cenário desejado. A regra de política determina quais recursos no escopo da atribuição são avaliados.
Compreender os resultados da avaliação
Os recursos são avaliados em momentos específicos durante o ciclo de vida do recurso, o ciclo de vida da atribuição de política e para uma avaliação de conformidade contínua e regular. A seguir estão os momentos ou eventos que fazem com que um recurso seja avaliado:
- Um recurso é criado ou atualizado em um escopo com uma atribuição de política.
- Uma política ou iniciativa é recentemente atribuída a um âmbito.
- Uma política ou iniciativa já atribuída a um âmbito é atualizada.
- Durante o ciclo normal de avaliação da conformidade, que ocorre uma vez a cada 24 horas.
Para obter informações detalhadas sobre quando e como a avaliação de políticas acontece, consulte Gatilhos de avaliação.
Controlar a resposta a uma avaliação
As regras de negócios para lidar com recursos não compatíveis variam muito entre as organizações. Exemplos de como uma organização deseja que a plataforma responda a um recurso não compatível incluem:
- Negar a alteração de recurso
- Registrar a alteração no recurso
- Alterar o recurso antes da alteração
- Alterar o recurso após a alteração
- Implantar recursos compatíveis relacionados
- Bloquear ações em recursos
A Política do Azure torna cada uma dessas respostas de negócios possível por meio da aplicação de efeitos. Os efeitos são definidos na parte da regra de política da definição de política.
Remediar recursos não conformes
Embora esses efeitos afetem principalmente um recurso quando o recurso é criado ou atualizado, a Política do Azure também dá suporte a lidar com recursos não compatíveis existentes sem a necessidade de alterar esse recurso. Para obter mais informações sobre como tornar os recursos existentes compatíveis, consulte Correção de recursos.
Visão geral do vídeo
A seguinte descrição geral do Azure Policy é do Build 2018. Para obter slides ou download de vídeo, visite Governar seu ambiente do Azure por meio da Política do Azure no Canal 9.
Introdução
Azure Policy e Azure RBAC
Há algumas diferenças importantes entre a Política do Azure e o controle de acesso baseado em função do Azure (Azure RBAC). A Política do Azure avalia o estado examinando propriedades em recursos representados no Gerenciador de Recursos e propriedades de alguns Provedores de Recursos. O Azure Policy garante que o estado do recurso esteja em conformidade com suas regras de negócios sem se preocupar com quem fez a alteração ou quem tem permissão para fazer uma alteração. A Política do Azure através do efeito DenyAction também pode bloquear determinadas ações em recursos. Alguns recursos da Política do Azure, como definições de política, definições de iniciativa e atribuições, são visíveis para todos os usuários. Esse design permite transparência para todos os usuários e serviços sobre quais regras de política são definidas em seu ambiente.
O RBAC do Azure se concentra no gerenciamento de ações do usuário em escopos diferentes. Se o controle de uma ação for necessário com base nas informações do usuário, o RBAC do Azure será a ferramenta correta a ser usada. Mesmo que um indivíduo tenha acesso para executar uma ação, se o resultado for um recurso não compatível, a Política do Azure ainda bloqueia a criação ou atualização.
A combinação do RBAC do Azure e da Política do Azure fornece controle total de escopo no Azure.
Permissões do Azure RBAC na Política do Azure
O Azure Policy tem várias permissões, conhecidas como operações, em dois Fornecedores de Recursos:
Muitas funções internas concedem permissão aos recursos da Política do Azure. A função de Colaborador da Política de Recursos inclui a maioria das operações da Política do Azure. Proprietário tem plenos direitos. Tanto o Colaborador quanto o Leitor têm acesso a todas as operações lidas do Azure Policy.
O colaborador pode acionar a correção de recursos, mas não pode criar ou atualizar definições e atribuições. O Administrador de Acesso do Usuário é necessário para conceder a identidade gerenciada em deployIfNotExists ou modificar as atribuições necessárias permissões.
Nota
Todos os objetos de política, incluindo definições, iniciativas e atribuições, serão legíveis para todas as funções em seu escopo. Por exemplo, uma atribuição de Política com escopo para uma assinatura do Azure será legível por todos os titulares de função no escopo da assinatura e abaixo.
Se nenhuma das funções internas tiver as permissões necessárias, crie uma função personalizada.
As operações do Azure Policy podem ter um efeito significativo no seu ambiente do Azure. Apenas o conjunto mínimo de permissões necessárias para executar uma tarefa deve ser atribuído e essas permissões não devem ser concedidas a usuários que não precisam delas.
Nota
A identidade gerenciada de uma atribuição de política deployIfNotExists ou modificar precisa de permissões suficientes para criar ou atualizar recursos direcionados. Para obter mais informações, consulte Configurar definições de política para correção.
Requisito de permissões especiais para a Política do Azure com o Azure Virtual Network Manager
O Azure Virtual Network Manager (pré-visualização) permite-lhe aplicar políticas de gestão e segurança consistentes a várias redes virtuais (VNets) do Azure em toda a sua infraestrutura de nuvem. Os grupos dinâmicos do Azure Virtual Network Manager (AVNM) usam definições de Política do Azure para avaliar a associação da VNet nesses grupos.
Para criar, editar ou excluir políticas de grupo dinâmico do Azure Virtual Network Manager, você precisa:
- Ler e gravar permissões do RBAC do Azure na política subjacente
- Permissões do RBAC do Azure para ingressar no grupo de rede (a autorização Classic Admin não é suportada).
Especificamente, a permissão de provedor de recursos necessária é Microsoft.Network/networkManagers/networkGroups/join/action
.
Importante
Para modificar grupos dinâmicos do AVNM, você deve ter acesso somente por meio da atribuição de função RBAC do Azure. Não há suporte para autorização clássica de administrador/herdado; isso significa que, se sua conta recebesse apenas a função de assinatura de coadministrador, você não teria permissões em grupos dinâmicos do AVNM.
Recursos abrangidos pela Política do Azure
Embora uma política possa ser atribuída no nível do grupo de gerenciamento, somente os recursos no nível da assinatura ou do grupo de recursos são avaliados.
Para determinados provedores de recursos, como Configuração de Máquina, Serviço Kubernetes do Azure e Cofre de Chaves do Azure, há uma integração mais profunda para gerenciar configurações e objetos. Para saber mais, vá para os modos de Provedor de Recursos.
Recomendações para a gestão de políticas
Aqui estão algumas dicas e dicas para ter em mente:
Comece com um
audit
efeito ouauditIfNotExist
em vez de um efeito de imposição (deny
,modify
,deployIfNotExist
) para controlar o impacto da sua definição de política nos recursos do seu ambiente. Se você já tiver scripts para dimensionar automaticamente seus aplicativos, definir um efeito de imposição pode dificultar essas tarefas de automação já em vigor.Considere as hierarquias organizacionais ao criar definições e atribuições. Recomendamos a criação de definições em níveis mais altos, como o grupo de gerenciamento ou o nível de assinatura. Em seguida, crie a atribuição no próximo nível filho. Se você criar uma definição em um grupo de gerenciamento, a atribuição poderá ter como escopo uma assinatura ou grupo de recursos dentro desse grupo de gerenciamento.
Recomendamos criar e atribuir definições de iniciativa, mesmo que começando com uma única definição de política. Isso permite que você adicione definições de política à iniciativa mais tarde sem aumentar o número de atribuições a serem gerenciadas.
Por exemplo, imagine que você crie policyDefA de definição de política e adicione-a à initiative definition initiativeDefC. Se, posteriormente, você criar outra política de definição de políticaDefB com metas semelhantes a policyDefA, poderá adicioná-la em initiativeDefC e rastreá-las juntas.
Depois de criar uma atribuição de iniciativa, as definições de política adicionadas à iniciativa também se tornam parte das atribuições dessa iniciativa.
Quando uma atribuição de iniciativa é avaliada, todas as políticas dentro da iniciativa também são avaliadas. Se você precisa avaliar uma política individualmente, é melhor não incluí-la em uma iniciativa.
Gerencie os recursos da Política do Azure como código com revisões manuais sobre alterações em definições, iniciativas e atribuições de política. Para saber mais sobre padrões e ferramentas sugeridos, consulte Criar a Política do Azure como fluxos de trabalho de código.
Objetos de política do Azure
Definição de política
O percurso de criar e implementar uma política no Azure Policy começa pela criação de uma definição de política. Cada definição de política tem condições ao abrigo das quais é aplicada. E tem um efeito definido que ocorre se as condições forem cumpridas.
Na Política do Azure, oferecemos várias políticas internas que estão disponíveis por padrão. Por exemplo:
- SKUs de conta de armazenamento permitida (Negar): determina se uma conta de armazenamento que está sendo implantada está dentro de um conjunto de tamanhos de SKU. Seu efeito é negar todas as contas de armazenamento que não aderem ao conjunto de tamanhos de SKU definidos.
- Tipo de recurso permitido (Negar): define os tipos de recursos que você pode implantar. Seu efeito é negar todos os recursos que não fazem parte dessa lista definida.
- Locais permitidos (Negar): Restringe os locais disponíveis para novos recursos. O efeito é utilizado para impor os requisitos de geoconformidade.
- SKUs de máquina virtual permitidas (Negar): especifica um conjunto de SKUs de máquina virtual que você pode implantar.
- Adicionar uma tag aos recursos (Modificar): aplica uma tag necessária e seu valor padrão se ela não for especificada pela solicitação de implantação.
- Tipos de recursos não permitidos (Negar): impede que uma lista de tipos de recursos seja implantada.
Para implementar essas definições de política (definições internas e personalizadas), você precisa atribuí-las. Pode atribuir qualquer uma destas políticas através do portal do Azure, do PowerShell ou da CLI do Azure.
A avaliação de políticas acontece com várias ações diferentes, como atribuição ou atualizações de políticas. Para obter uma lista completa, consulte Gatilhos de avaliação de política.
Para saber mais sobre as estruturas de definições de política, veja Estrutura de Definição de Política.
Os parâmetros de política ajudam a simplificar a gestão de políticas ao reduzir o número de definições de política que tem de criar. Pode definir os parâmetros durante a criação de uma definição de política para torná-la mais genérica. Em seguida, pode reutilizar essa definição de política para diferentes cenários. Pode fazê-lo ao transmitir diferentes valores quando atribui a definição de política. Por exemplo, pode especificar um conjunto de localizações para uma subscrição.
Os parâmetros são definidos ao criar uma definição de política. Quando um parâmetro é definido, é fornecido um nome e opcionalmente um valor para o mesmo. Por exemplo, pode definir um parâmetro para uma política intitulada localização. Em seguida, pode atribuir-lhe valores diferentes, tais como EastUS ou WestUS quando atribui uma política.
Para obter mais informações sobre parâmetros de política, consulte Estrutura de definição - Parâmetros.
Definição de iniciativa
Uma definição de iniciativa é uma coleção de definições de políticas que são adaptadas para alcançar um objetivo global singular. As definições de iniciativa simplificam a gestão e a atribuição de definições de política. Simplificam através do agrupamento de um conjunto de políticas num único item. Por exemplo, você pode criar uma iniciativa intitulada Habilitar monitoramento no Microsoft Defender for Cloud, com o objetivo de monitorar todas as recomendações de segurança disponíveis em sua instância do Microsoft Defender for Cloud.
Nota
O SDK, como a CLI do Azure e o Azure PowerShell, usa propriedades e parâmetros chamados PolicySet para fazer referência a iniciativas.
Ao abrigo desta iniciativa, terá definições de política como:
- Monitorar o Banco de Dados SQL não criptografado no Microsoft Defender for Cloud - Para monitorar bancos de dados e servidores SQL não criptografados.
- Monitorar vulnerabilidades do sistema operacional no Microsoft Defender for Cloud - Para monitorar servidores que não satisfazem a linha de base configurada.
- Monitorar o Endpoint Protection ausente no Microsoft Defender for Cloud - Para monitorar servidores sem um agente de proteção de ponto final instalado.
Tal como os parâmetros de política, os parâmetros de iniciativa ajudam a simplificar a gestão de iniciativas ao reduzir a redundância. Os parâmetros da iniciativa são parâmetros utilizados pelas definições de política no âmbito da iniciativa.
Por exemplo, considere um cenário em que tem uma definição de iniciativa - initiativeC, com as definições de política policyA e policyB, em que cada uma espera um tipo diferente de parâmetro:
Política | Nome do parâmetro | Tipo de parâmetro | Nota |
---|---|---|---|
policyA | allowedLocations | matriz | Este parâmetro espera uma lista de cadeias para um valor, uma vez que o tipo de parâmetro foi definido como uma matriz |
policyB | allowedSingleLocation | string | Este parâmetro espera uma palavra para um valor, uma vez que o tipo de parâmetro foi definido como uma cadeia |
Neste cenário, quando define os parâmetros da iniciativa para initiativeC, tem três opções:
- Utilizar os parâmetros das definições de política nesta iniciativa: neste exemplo, allowedLocations e allowedSingleLocation tornam-se parâmetros de iniciativa para initiativeC.
- Indicar os valores para os parâmetros das definições de política nesta definição de iniciativa. Neste exemplo, você pode fornecer uma lista de locais para o parâmetro de policyA - allowedLocations e o parâmetro de policyB - allowedSingleLocation. Também pode fornecer valores quando atribui esta iniciativa.
- Fornecer uma lista das opções de valor que podem ser utilizadas quando atribui esta iniciativa. Quando atribui esta iniciativa, os parâmetros herdados das definições de política na iniciativa apenas podem ter valores desta lista fornecida.
Ao criar opções de valor em uma definição de iniciativa, você não pode inserir um valor diferente durante a atribuição da iniciativa porque ele não faz parte da lista.
Para saber mais sobre as estruturas das definições de iniciativa, consulte a Estrutura de definição de iniciativa.
Atribuições
Uma atribuição é uma definição de política ou iniciativa que foi atribuída a um âmbito específico. Este âmbito pode ir desde um grupo de gestão até um recurso individual. O termo escopo refere-se a todos os recursos, grupos de recursos, assinaturas ou grupos de gerenciamento aos quais a definição é atribuída. As atribuições são herdadas por todos os recursos filho. Esse design significa que uma definição aplicada a um grupo de recursos também é aplicada aos recursos desse grupo de recursos. No entanto, você pode excluir um subescopo da atribuição.
Por exemplo, no escopo da assinatura, você pode atribuir uma definição que impeça a criação de recursos de rede. Você pode excluir um grupo de recursos nessa assinatura destinada à infraestrutura de rede. Em seguida, você concede acesso a esse grupo de recursos de rede aos usuários em quem confia a criação de recursos de rede.
Em outro exemplo, talvez você queira atribuir uma definição de lista permitida de tipo de recurso no nível do grupo de gerenciamento. Em seguida, você atribui uma política mais permissiva (permitindo mais tipos de recursos) em um grupo de gerenciamento filho ou até mesmo diretamente em assinaturas. No entanto, este exemplo não funcionaria porque o Azure Policy é um sistema de negação explícito. Em vez disso, você precisa excluir o grupo de gerenciamento filho ou a assinatura da atribuição no nível do grupo de gerenciamento. Em seguida, atribua a definição mais permissiva no grupo de gerenciamento filho ou no nível de assinatura. Se qualquer atribuição resultar na negação de um recurso, a única maneira de permitir o recurso é modificar a atribuição que nega.
As atribuições de política sempre usam o estado mais recente de sua definição ou iniciativa atribuída ao avaliar recursos. Se uma definição de política já atribuída for alterada, todas as atribuições existentes dessa definição usarão a lógica atualizada ao avaliar.
Para obter mais informações sobre como definir atribuições por meio do portal, consulte Criar uma atribuição de política para identificar recursos não compatíveis em seu ambiente do Azure. Também estão disponíveis passos para o PowerShell e a CLI do Azure. Para obter informações sobre a estrutura de atribuições, consulte Estrutura de atribuições.
Contagem máxima de objetos de Política do Azure
Há uma contagem máxima para cada tipo de objeto para a Política do Azure. Para definições, uma entrada de Escopo significa o grupo de gerenciamento ou assinatura. Para atribuições e isenções, uma entrada de Escopo significa o grupo de gerenciamento, assinatura, grupo de recursos ou recurso individual.
Onde | O quê | Contagem máxima |
---|---|---|
Âmbito | Definições de política | 500 |
Âmbito | Definições de iniciativa | 200 |
Inquilino | Definições de iniciativa | 2500 |
Âmbito | Atribuições de políticas ou iniciativas | 200 |
Âmbito | Isenções | 1000 |
Definição de política | Parâmetros | 20 |
Definição de iniciativa | Políticas | 1000 |
Definição de iniciativa | Parâmetros | 400 |
Atribuições de políticas ou iniciativas | Exclusões (notScopes) | 400 |
Regra de política | Condicionais aninhados | 512 |
Tarefa de correção | Recursos | 50 000 |
Órgão de definição de política, iniciativa ou solicitação de atribuição | Bytes | 1 048 576 |
As regras políticas têm mais limites para o número de condições e a sua complexidade. Para obter mais informações, vá para Limites de regras de política para obter mais detalhes.
Próximos passos
Agora que tem uma ideia geral do Azure Policy e de alguns dos principais conceitos, seguem-se os passos sugeridos seguintes:
- Rever a estrutura de definição da política.
- Atribua uma definição de política usando o portal.