Início rápido: Criar um grupo de gerenciamento com o Python

Grupos de gerenciamento são contêineres que o ajudarão a gerenciar o acesso, a política e a conformidade entre várias assinaturas. Criar esses contêineres para criar uma hierarquia eficaz e eficiente que pode ser usada com o Azure Policy e os Controles de Acesso Baseados em Função do Azure. Para obter mais informações sobre grupos de gerenciamento, consulte Organizar seus recursos com grupos de gerenciamento do Azure.

O primeiro grupo de gerenciamento criado no diretório pode levar até 15 minutos para ser concluído. Há processos que são executados pela primeira vez para configurar o serviço de grupos de gerenciamento no Azure para seu diretório. Você recebe uma notificação quando o processo é concluído. Para obter mais informações, confira Configuração inicial dos grupos de gerenciamento.

Pré-requisitos

  • Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

  • Qualquer usuário do Microsoft Entra ID no locatário poderá criar um grupo de gerenciamento sem ter recebido a permissão de gravação no grupo de gerenciamento se a proteção de hierarquia não estiver habilitada. Esse novo grupo de gerenciamento se torna um grupo filho do Grupo de Gerenciamento Raiz ou do grupo de gerenciamento padrão, e uma função de Proprietário é atribuída ao criador. O serviço de grupo de gerenciamento permite essa capacidade para que as atribuições de função não sejam necessárias no nível raiz. Quando o Grupo de Gerenciamento da Raiz é criado, os usuários não têm acesso a ele. Para que os grupos de gerenciamento comecem a ser usados, o serviço permite a criação dos grupos de gerenciamento iniciais no nível raiz. Para obter mais informações, confira Grupo de gerenciamento raiz para cada diretório.

Azure Cloud Shell

O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Link
Selecione Experimentar no canto superior direito de um bloco de código ou de comando. Selecionar Experimentar não copia automaticamente o código nem o comando para o Cloud Shell. Captura de tela que mostra um exemplo de Experimente para o Azure Cloud Shell.
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador. Botão para iniciar o Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure. Captura de tela que mostra o botão Cloud Shell no portal do Azure

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou o comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e no Linux, ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou o comando.

Adicionar a biblioteca do Resource Graph

Para permitir que o Python gerencie grupos de gerenciamento, a biblioteca precisará ser adicionada. Essa biblioteca funciona onde quer que o Python possa ser usado, incluindo o bash no Windows 10 ou instalado localmente.

  1. Verifique se o Python mais recente está instalado (pelo menos a versão 3.8). Se ele ainda não tiver sido instalado, baixe-o em Python.org.

  2. Verifique se a CLI do Azure mais recente está instalada (pelo menos a versão 2.5.1). Se ela ainda não tiver sido instalada, confira Instalar a CLI do Azure.

    Observação

    A CLI do Azure é necessária para habilitar o Python a usar a autenticação baseada na CLI do nos exemplos a seguir. Para obter informações sobre outras opções, confira Autenticar-se usando as bibliotecas de gerenciamento do Azure para Python.

  3. Autentique-se por meio da CLI do Azure.

    az login
    
  4. No ambiente do Python de sua escolha, instale as bibliotecas necessárias para os grupos de gerenciamento:

    # Add the management groups library for Python
    pip install azure-mgmt-managementgroups
    
    # Add the Resources library for Python
    pip install azure-mgmt-resource
    
    # Add the CLI Core library for Python for authentication (development only!)
    pip install azure-cli-core
    

    Observação

    Se o Python estiver instalado para todos os usuários, esse comando precisará ser executado em um console com privilégios elevados.

  5. Confirme se as bibliotecas foram instaladas. azure-mgmt-managementgroups deve ser 0.2.0 ou superior, azure-mgmt-resource deve ser 9.0.0 ou superior e azure-cli-core deve ser 2.5.0 ou superior.

    # Check each installed library
    pip show azure-mgmt-managementgroups azure-mgmt-resource azure-cli-core
    

Criar o grupo de gerenciamento

  1. Crie o script Python e salve o seguinte código-fonte como mgCreate.py:

    # Import management group classes
    from azure.mgmt.managementgroups import ManagementGroupsAPI
    
    # Import specific methods and models from other libraries
    from azure.common.credentials import get_azure_cli_credentials
    from azure.common.client_factory import get_client_from_cli_profile
    from azure.mgmt.resource import ResourceManagementClient, SubscriptionClient
    
    # Wrap all the work in a function
    def createmanagementgroup( strName ):
        # Get your credentials from Azure CLI (development only!) and get your subscription list
        subsClient = get_client_from_cli_profile(SubscriptionClient)
        subsRaw = []
        for sub in subsClient.subscriptions.list():
            subsRaw.append(sub.as_dict())
        subsList = []
        for sub in subsRaw:
            subsList.append(sub.get('subscription_id'))
    
        # Create management group client and set options
        mgClient = get_client_from_cli_profile(ManagementGroupsAPI)
        mg_request = {'name': strName, 'display_name': strName}
    
        # Create management group
        mg = mgClient.management_groups.create_or_update(group_id=strName,create_management_group_request=mg_request)
    
        # Show results
        print(mg)
    
    createmanagementgroup("MyNewMG")
    
  2. Autentique-se na CLI do Azure com az login.

  3. Insira o seguinte comando no terminal:

    py mgCreate.py
    

O resultado da criação do grupo de gerenciamento é a saída para o console como um objeto LROPoller.

Limpar os recursos

Se desejar remover as bibliotecas instaladas do seu ambiente do Python, você poderá fazer isso usando o seguinte comando:

# Remove the installed libraries from the Python environment
pip uninstall azure-mgmt-managementgroups azure-mgmt-resource azure-cli-core

Próximas etapas

Neste guia de início rápido, você criou um grupo de gerenciamento para organizar sua hierarquia de recursos. O grupo de gerenciamento pode conter assinaturas ou outros grupos de gerenciamento.

Para saber mais sobre grupos de gerenciamento e como gerenciar sua hierarquia de recursos, prossiga para: