Compartilhar via


Configurar grupos de rede com o Azure Policy no Gerenciador de Rede Virtual do Azure

Neste artigo, você aprenderá como o Azure Policy é usado no Gerenciador de Rede Virtual do Azure para definir a associação dinâmica de grupo de rede. Os grupos de rede dinâmicos permitem que você crie ambientes de rede virtual escalonáveis e adaptáveis dinamicamente em sua organização.

Visão geral da política do Azure

O Azure Policy avalia os recursos no Azure comparando as propriedades desses recursos com as regras de negócio. Essas regras de negócio, descritas no formato JSON, são conhecidas como definições de política. Depois que as regras de negócios são formadas, a definição da política é atribuída a qualquer escopo de recursos compatível com o Azure, como grupos de gerenciamento, assinaturas, grupos de recursos ou recursos individuais. A atribuição se aplica a todos os recursos dentro do escopo do Resource Manager dessa atribuição. Saiba mais sobre o escopo de uso em Escopo no Azure Policy.

Observação

Azure Policy é usado apenas para a definição de associação dinâmica de grupo de rede.

Definição de política de grupo de rede

A jornada de criação e implementação de uma política no Azure Policy começa com a criação de um recurso de definição de política. Cada definição de política tem condições para imposição e um efeito definido que ocorre se as condições são atendidas.

Com grupos de rede, sua definição de política inclui sua expressão condicional para as redes virtuais correspondentes que atendem aos seus critérios e especifica o grupo de rede de destino em que todos os recursos correspondentes são colocados. O efeito addToNetworkGroup é usado para colocar recursos no grupo de rede de destino. Aqui está um exemplo de uma definição de regra de política com o efeito addToNetworkGroup. Para todas as políticas personalizadas, a propriedade mode é definida como Microsoft.Network.Data para direcionar o provedor de recursos do grupo de rede e é necessária para criar uma definição de política para o Gerenciador de Rede Virtual do Azure.

"mode": "Microsoft.Network.Data",
"policyRule": {
      "if": {
        "allOf": [
          {
            "field": "Name",
            "contains": "-gen"
          }
        ]
      },
      "then": {
        "effect": "addToNetworkGroup",
        "details": {
          "networkGroupId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup2/providers/Microsoft.Network/networkManagers/myAVNM/networkGroups/myNG"
        }
      }
}

Importante

Ao definir uma política, o networkGroupId deve ser a ID de recurso completa do grupo de rede de destino, conforme visto na definição de exemplo. Ele não dá suporte à parametrização na definição de política. Se você precisar parametrizar o grupo de rede, poderá utilizar um modelo do Azure Resource Manager para criar a definição e a atribuição da política.

Quando o Azure Policy é usado com o Gerenciador de Rede Virtual do Azure, a política destina-se a uma Propriedade do provedor de recursos de Microsoft.Network.Data. Por isso, você precisa especificar um policyType de Custom em sua definição de política. Quando você criar uma política para adicionar dinamicamente membros no Gerenciador de Rede Virtual, isso é aplicado automaticamente quando a política é criada. Você só precisa escolher custom ao criar uma nova definição de política por meio do Azure Policy ou outras ferramentas fora do painel do Virtual Network Manager.

Aqui está um exemplo de uma definição de política com a propriedade policyType definida como Custom.


"properties": {
      "displayName": "myProdAVNM",
      "policyType": "Custom",
      "mode": "Microsoft.Network.Data",
      "metadata": {
        "category": "Azure Virtual Network Manager",
        "createdBy": "-----------------------------",
        "createdOn": "2023-04-10T15:35:35.9308987Z",
        "updatedBy": null,
        "updatedOn": null
      }
}

Saiba mais sobre a estrutura da definição de política.

Criar uma atribuição de política

Semelhante às configurações do gerenciador de Rede Virtual, as definições de política não entrarão em vigor imediatamente após sua criação. Para começar a aplicar, você deve criar uma atribuição de política, que atribui uma definição a ser avaliada em um determinado escopo. Atualmente, todos os recursos dentro do escopo são avaliados em relação à definição, o que permite uma única definição reutilizável que você pode atribuir em vários locais para um controle de associação de grupo mais granular. Saiba mais sobre a Estrutura de Atribuição para Azure Policy.

Definições de política e atribuição podem ser criadas por meio da API/PS/CLI ou Portal do Azure Policy.

Permissões necessárias

Para usar grupos de rede com o Azure Policy, os usuários precisam das seguintes permissões:

  • Microsoft.Authorization/policyassignments/Write e Microsoft.Authorization/policydefinitions/Write são necessárias no escopo que você está atribuindo.
  • a ação Microsoft.Network/networkManagers/networkGroups/join/action é necessária no grupo de rede de destino referenciado na seção Adicionar ao grupo de rede. Essa permissão permite a adição e remoção de objetos do grupo de rede de destino.
  • Ao usar definições de conjunto para atribuir várias políticas ao mesmo tempo, permissões simultâneas Microsoft.Network/networkManagers/networkGroups/join/action são necessárias em todas as definições que estão sendo atribuídas no momento da atribuição.

Para definir as permissões necessárias, os usuários podem ser atribuídos a funções internas com controle de acesso baseado em função:

  • Função Colaborador de Rede para o grupo de rede de destino.
  • Função Colaborador de Política de Recursos no nível do escopo de destino.

Para atribuição de função mais granular, você pode criar funções personalizadas usando a permissão Microsoft.Network/networkManagers/networkGroups/join/action e a permissão policy/write.

Importante

Para modificar os grupos dinâmicos do VNM, 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/herdada; isso significa que, se sua conta fosse atribuída apenas à função de assinatura de coadministrador, você não teria permissões em grupos dinâmicos do AVNM.

Junto com as permissões necessárias, suas assinaturas e grupos de gerenciamento devem ser registrados com os seguintes provedores de recursos:

  • Microsoft.Network é necessário para criar redes virtuais.
  • Microsoft.PolicyInsights é necessário usar o Azure Policy.

Para definir o registro dos provedores necessários, use Register-AzResourceProvider no Azure PowerShell ou az provider register na CLI do Azure.

Dicas úteis

Filtragem de tipo

Ao configurar suas definições de política, é recomendável incluir uma condição de tipo para definir o escopo para redes virtuais. Essa condição permite que uma política filtre operações de rede não virtuais e melhore a eficiência dos recursos de política.

Fatiamento regional

Os recursos de política são globais, o que significa que qualquer alteração entra em vigor em todos os recursos no escopo da atribuição, independentemente da região. Se o fatiamento regional e a distribuição gradual forem uma preocupação para você, recomendamos incluir uma condição where location in []. Em seguida, você pode expandir incrementalmente a lista de locais para implantar gradualmente o efeito.

Escopo de atribuição

Se você estiver seguindo as práticas recomendadas do grupo de gerenciamento por meio de Grupos de gerenciamento do Azure, é provável que você já tenha seus recursos organizados em uma estrutura de hierarquia. Usando atribuições, você pode atribuir a mesma definição a vários escopos distintos de sua hierarquia, permitindo que você tenha um controle de granularidade maior de quais recursos estão qualificados para seu grupo de rede.

Excluindo uma definição do Azure Policy associada a um grupo de rede

Pode haver instâncias em que uma definição do Azure Policy não é mais necessária. As instâncias incluem quando um grupo de rede associado a uma política é excluído ou você tem uma política não usada que você não precisa mais. Para excluir a política, você precisa excluir o objeto de associação de política e, em seguida, excluir a definição de política no Azure Policy. Depois que a exclusão for concluída, o nome de definição não poderá ser reutilizado ou referenciado novamente ao associar uma nova definição a um grupo de rede.

Próximas etapas