Inicio rápido: Creación de un grupo de administración con Python

Los grupos de administración son contenedores que ayudan a administran el acceso, las directivas y el cumplimiento de varias suscripciones. Cree estos contenedores para construir una jerarquía eficaz y eficiente que pueda usarse con Azure Policy y los controles de acceso basados en roles de Azure. Para obtener más información sobre los grupos de administración, consulte Organización de los recursos con grupos de administración de Azure.

El primer grupo de administración creado en el directorio puede tardar hasta 15 minutos en completarse. Hay procesos que se ejecutan la primera vez para configurar el servicio de grupos de administración dentro de Azure para su directorio. Recibirá una notificación cuando finalice el proceso. Para obtener más información, vea Instalación inicial de los grupos de administración.

Requisitos previos

  • Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

  • Si la protección de jerarquías no está habilitada, cualquier usuario de Azure AD del inquilino puede crear un grupo de administración sin tener el permiso de escritura del grupo de administración asignado. Este nuevo grupo de administración pasa a ser un elemento secundario del grupo de administración raíz o del grupo de administración predeterminado y al creador se le asigna el rol de "Propietario". El servicio del grupo de administración ofrece esta funcionalidad para que las asignaciones de roles no sean necesarias en el nivel raíz. Ningún usuario tiene acceso al grupo de administración raíz cuando se crea. Para sortear el obstáculo de buscar administradores globales de Azure AD para empezar a usar grupos de administración, se permite la creación de grupos de administración iniciales en el nivel raíz.

Azure Cloud Shell

En Azure se hospeda Azure Cloud Shell, un entorno de shell interactivo que puede utilizar mediante el explorador. Puede usar Bash o PowerShell con Cloud Shell para trabajar con los servicios de Azure. Puede usar los comandos preinstalados de Cloud Shell para ejecutar el código de este artículo sin tener que instalar nada en su entorno local.

Para iniciar Azure Cloud Shell:

Opción Ejemplo o vínculo
Seleccione Pruébelo en la esquina superior derecha de un bloque de código o de comandos. Solo con seleccionar Pruébelo no se copia automáticamente el código o comando en Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. Button to launch Azure Cloud Shell.
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. Screenshot that shows the Cloud Shell button in the Azure portal

Para usar Azure Cloud Shell:

  1. Inicie Cloud Shell.

  2. Seleccione el botón Copiar en un bloque de código (o bloque de comandos) para copiar el código o comando.

  3. Pegue el código o comando en la sesión de Cloud Shell. Para ello, seleccione Ctrl+Mayús+V en Windows y Linux, o bien seleccione Cmd+Mayús+V en macOS.

  4. Seleccione Intro para ejecutar el código o comando.

Adición de la biblioteca de Resource Graph

Para habilitar Python para administrar grupos de administración, debe agregarse la biblioteca. Esta biblioteca funciona siempre que se pueda usar Python, lo que incluye bash en Windows 10 o instalado localmente.

  1. Compruebe que está instalada la versión más reciente de Python (al menos la 3.8). Si aún no está instalada, descárguela en Python.org.

  2. Compruebe que está instalada la versión más reciente de la CLI de Azure (al menos la 2.5.1). Si aún no está instalada, consulte Instalación de la CLI de Azure.

    Nota

    La CLI de Azure es necesaria para que Python pueda usar la autenticación basada en la CLI en los ejemplos siguientes. Para información sobre otras opciones, consulte Autenticación mediante las bibliotecas de administración de Python.

  3. Autentíquese mediante la CLI de Azure.

    az login
    
  4. En el entorno de Python que elija, instale las bibliotecas necesarias para los grupos de administración:

    # 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
    

    Nota

    Si Python está instalado en todos los usuarios, estos comando deben ejecutarse desde una consola con privilegios elevados.

  5. Compruebe que se han instalado las bibliotecas. azure-mgmt-managementgroups debe tener la versión 0.2.0 o posterior, azure-mgmt-resource debe tener la versión 9.0.0 o posterior, y azure-cli-core debe tener la versión 2.5.0 o posterior.

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

Creación del grupo de administración

  1. Cree el script de Python y guarde el siguiente origen 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. Autenticación con la CLI de Azure con az login.

  3. En el terminal, escriba el siguiente comando:

    py mgCreate.py
    

El resultado de la creación del grupo de administración se envía a la consola como objeto LROPoller.

Limpieza de recursos

Si desea quitar las bibliotecas instaladas del entorno de Python, puede hacerlo mediante el comando siguiente:

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

Pasos siguientes

En este inicio rápido, ha creado un grupo de administración para organizar una jerarquía de recursos. El grupo de administración puede contener suscripciones u otros grupos de administración.

Para más información acerca de los grupos de administración y cómo administrar la jerarquía de recursos, vaya a: