Compartir a través de


Configuración de identidades administradas de recursos de Azure en un conjunto de escalado de máquinas virtuales

Las identidades administradas para recursos de Azure es una característica de Microsoft Entra ID. Cada servicio de Azure compatible con Managed Identities for Azure Resources está sujeto a su propia escala de tiempo. Asegúrese de revisar el estado de disponibilidad de las identidades administradas para el recurso y los problemas conocidos antes de comenzar.

Las identidades administradas de los recursos de Azure proporcionan a los servicios de Azure una identidad administrada automáticamente en Microsoft Entra ID. Puede usar esta identidad para autenticar a cualquier servicio que admita la autenticación de Microsoft Entra, sin necesidad de tener credenciales en el código.

En este artículo, se usará Azure Portal para aprender a realizar las siguientes operaciones de identidades administradas para recursos de Azure en un conjunto de escalado de máquinas virtuales:

  • Si no está familiarizado con las identidades administradas de los recursos de Azure, consulte la sección de introducción.

  • Si aún no tiene una cuenta de Azure, regístrese para una cuenta gratuita antes de continuar.

  • Para llevar a cabo las operaciones de administración de este artículo, su cuenta debe tener las siguientes asignaciones de roles de Azure:

    Nota:

    No se requiere ninguna otra asignación de roles de directorio de Microsoft Entra.

    • Colaborador de máquina virtual para habilitar y quitar la identidad administrada asignada por el sistema desde un conjunto de escalado de máquinas virtuales.

Identidad administrada asignada por el sistema

En esta sección, aprenderá a habilitar y deshabilitar la identidad administrada asignada por el sistema mediante Azure Portal.

Habilitación de la identidad administrada asignada por el sistema durante la creación de un conjunto de escalado de máquinas virtuales

En la actualidad Azure Portal no permite habilitar una identidad administrada asignada por el sistema durante la creación de un conjunto de escalado de máquinas virtuales. En su lugar, consulte la siguiente guía de inicio rápido sobre la creación de conjuntos de escalado de máquinas virtuales para crear uno primero y, después, continúe a la siguiente sección para obtener detalles sobre la habilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales:

Habilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales existente

Sugerencia

Los pasos de este artículo pueden variar ligeramente en función del portal desde donde comienza.

Para habilitar la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales que se aprovisionó originalmente sin ella, siga estos pasos:

  1. Inicie sesión en Azure Portal con una cuenta asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales.

  2. Vaya al conjunto de escalado de máquinas virtuales de Azure que desee.

  3. En Asignado por el sistema, en Estado, seleccione Activado y haga clic en Guardar:

    Captura de pantalla que muestra la página

Eliminación de una identidad asignada por el sistema desde un conjunto de escalado de máquinas virtuales

Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita una identidad administrada asignada por el sistema, haga lo siguiente:

  1. Inicie sesión en Azure Portal con una cuenta asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales. Asegúrese también de que la cuenta pertenece a un rol que le concede permisos de escritura en el conjunto de escalado de máquinas virtuales.

  2. Vaya al conjunto de escalado de máquinas virtuales de Azure que desee.

  3. En Asignado por el sistema, en Estado, seleccione Desactivado y haga clic en Guardar:

    Captura de pantalla en la que se muestra la página de configuración.

Identidad administrada asignada por el usuario

En esta sección aprenderá a agregar una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales y a quitarla mediante Azure Portal.

Asignación de una identidad administrada asignada por el usuario durante la creación de un conjunto de escalado de máquinas virtuales

En la actualidad Azure Portal no permite las identidades administradas asignadas por el usuario durante la creación de un conjunto de escalado de máquinas virtuales. En su lugar, consulte la siguiente guía de inicio rápido sobre la creación de conjuntos de escalado de máquinas virtuales para crear uno primero y, después, continúe a la siguiente sección para detalles sobre cómo el usuario puede asignarle una identidad administrada:

Asignación de una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales existente

  1. Inicie sesión en Azure Portal con una cuenta asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales.

  2. Vaya al conjunto de escalado de máquinas virtuales que desee y haga clic en Identidad, Asignado por el usuario y en +Agregar.

    Captura de pantalla en la que se muestra cómo agregar una identidad asignada por el usuario al conjunto de escalado de máquinas virtuales.

  3. Haga clic en la identidad asignada por el usuario que desea agregar al conjunto de escalado de máquinas virtuales y, luego, en Agregar.

    Captura de pantalla en la que se muestra cómo agregar una identidad asignada por el usuario a un conjunto de escalado de máquinas virtuales.

Eliminación de una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales

  1. Inicie sesión en Azure Portal con una cuenta asociada a la suscripción de Azure que contiene la máquina virtual.

  2. Vaya al conjunto de escalado de máquinas virtuales que desee y haga clic en Identidad, en Asignado por el usuario, en el nombre de la identidad administrada asignada por el usuario que desea eliminar y en Quitar (haga clic en en el panel de confirmación).

    Captura de pantalla en la que se muestra cómo quitar la identidad asignada por el usuario de un conjunto de escalado de máquinas virtuales.

Pasos siguientes

En este artículo obtendrá más información sobre cómo realizar las siguientes operaciones de identidades administradas de recursos de Azure en un conjunto de escalado de máquinas virtuales de Azure mediante la CLI de Azure:

  • Habilitación y deshabilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure
  • Adición y eliminación de una identidad asignada por el usuario un conjunto de escalado de máquinas virtuales de Azure

Si aún no tiene una cuenta de Azure, regístrese para una cuenta gratuita antes de continuar.

Prerrequisitos

  • Si no está familiarizado con las identidades administradas para los recursos de Azure, vea ¿Qué son las identidades administradas para recursos de Azure?. Para obtener información sobre los tipos de identidad administrada asignados por el sistema y asignados por el usuario, consulte Tipos de identidad administrada.

  • Para realizar las operaciones de administración de este artículo, su cuenta debe tener las siguientes asignaciones de control de acceso basado en rol:

    Nota:

    No se requiere ninguna otra asignación de roles de directorio de Microsoft Entra.

Identidad administrada asignada por el sistema

En esta sección, obtendrá información sobre cómo habilitar y deshabilitar la identidad administrada asignada por el sistema para un conjunto de escalado de máquinas virtuales de Azure mediante la CLI de Azure.

Habilitación de la identidad administrada asignada por el sistema durante la creación de un conjunto de escalado de máquinas virtuales de Azure

Para crear un conjunto de escalado de máquinas virtuales con la identidad administrada asignada por el sistema habilitada:

  1. Cree un grupo de recursos para contener e implementar el conjunto de escalado de máquinas virtuales y sus recursos relacionados, con az group create. Puede omitir este paso si ya tiene un grupo de recursos que le gustaría usar en su lugar:

    az group create --name myResourceGroup --location westus
    
  2. Cree un conjunto de escalado de máquinas virtuales. En el ejemplo siguiente se crea un conjunto de escalado de máquinas virtuales denominado myVMSS con una identidad administrada asignada por el sistema, como solicitó el parámetro --assign-identity, con --role y --scope especificados. Los parámetros --admin-username y --admin-password especifican el nombre de usuario administrativo y la contraseña de la cuenta para el inicio de sesión en la máquina virtual. Actualice estos valores según convenga para su entorno:

    az vmss create --resource-group myResourceGroup --name myVMSS --image win2016datacenter --upgrade-policy-mode automatic --custom-data cloud-init.txt --admin-username azureuser --admin-password myPassword12 --assign-identity --generate-ssh-keys --role contributor --scope mySubscription
    

Habilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure existente

Si necesita habilitar la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure existente:

az vmss identity assign -g myResourceGroup -n myVMSS

Deshabilitación de la identidad administrada asignada por el sistema de un conjunto de escalado de máquinas virtuales de Azure

Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita la identidad administrada asignada por el sistema, pero aún necesita identidades administradas asignadas por el usuario, use el siguiente comando:

az vmss update -n myVM -g myResourceGroup --set identity.type='UserAssigned' 

Si tiene una máquina virtual que ya no necesita la identidad administrada asignada por el sistema y no tiene identidades administradas asignadas por el usuario, use el siguiente comando:

Nota:

El valor none no distingue mayúsculas de minúsculas. Debe estar en minúscula.

az vmss update -n myVM -g myResourceGroup --set identity.type="none"

Identidad administrada asignada por el usuario

En esta sección obtendrá más información sobre cómo habilitar y quitar una identidad administrada asignada por el usuario mediante la CLI de Azure.

Asignación de una identidad administrada asignada por el usuario durante la creación de un conjunto de escalado de máquinas virtuales

En esta sección se explica el proceso de creación de un conjunto de escalado de máquinas virtuales y de asignación de una identidad administrada asignada por el usuario al conjunto de escalado de máquinas virtuales. Si ya tiene un conjunto de escalado de máquinas virtuales que quiera usar, omita esta sección y vaya a la siguiente.

  1. Puede omitir este paso si ya tiene un grupo de recursos que le gustaría usar. Cree un grupo de recursos para contener e implementar la identidad administrada asignada por el usuario mediante az group create. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <LOCATION> con sus propios valores. :

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Cree una identidad administrada asignada por el usuario mediante az identity create. El parámetro -g especifica el grupo de recursos en el que se crea la identidad administrada asignada por el usuario, mientras que el parámetro -n especifica su nombre. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <USER ASSIGNED IDENTITY NAME> por sus propios valores:

    Importante

    Al crear identidades administradas asignadas por el usuario, el nombre debe comenzar con una letra o un número, y puede incluir una combinación de caracteres alfanuméricos, guiones (-) y guiones bajos (_). Para que la asignación a una máquina virtual o un conjunto de escalado de máquinas virtuales funcione correctamente, el nombre está limitado a 24 caracteres. Para más información, consulte Preguntas más frecuentes y problemas conocidos.

    az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
    

    La respuesta contiene detalles de la identidad administrada asignada por el usuario que se ha creado, de forma similar a lo siguiente. El valor del recurso id asignado a la identidad administrada asignada por el usuario se usa en el paso siguiente.

    {
         "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY NAME>",
         "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Cree un conjunto de escalado de máquinas virtuales. En el ejemplo siguiente se crea un conjunto de escalado de máquinas virtuales asociado a la nueva identidad administrada asignada por el usuario, según lo especificado por el parámetro --assign-identity, con --role y --scope especificados. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP>, <VMSS NAME>, <USER NAME>, <PASSWORD>, <USER ASSIGNED IDENTITY>, <ROLE> y <SUBSCRIPTION> por sus propios valores.

    az vmss create --resource-group <RESOURCE GROUP> --name <VMSS NAME> --image <SKU Linux Image> --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY> --role <ROLE> --scope <SUBSCRIPTION>
    

Asignación de una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales existente

  1. Cree una identidad administrada asignada por el usuario mediante az identity create. El parámetro -g especifica el grupo de recursos en el que se crea la identidad administrada asignada por el usuario, mientras que el parámetro -n especifica su nombre. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <USER ASSIGNED IDENTITY NAME> por sus propios valores:

    az identity create -g <RESOURCE GROUP> -n <USER ASSIGNED IDENTITY NAME>
    

    La respuesta contiene detalles de la identidad administrada asignada por el usuario que se ha creado, de forma similar a lo siguiente.

    {
         "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY >/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY>",
         "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Asigne la identidad administrada asignada por el usuario al conjunto de escalado de máquinas virtuales. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <VIRTUAL MACHINE SCALE SET NAME> con sus propios valores. El parámetro <USER ASSIGNED IDENTITY> es la propiedad name del recurso de la identidad asignada por el usuario, tal como se creó en el paso anterior:

    az vmss identity assign -g <RESOURCE GROUP> -n <VIRTUAL MACHINE SCALE SET NAME> --identities <USER ASSIGNED IDENTITY>
    

Eliminación de una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales de Azure

Para eliminar una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales, use az vmss identity remove. Si se trata de la única identidad administrada asignada por el usuario asignada al conjunto de escalado de máquinas virtuales, UserAssigned se quitará del valor de tipo de identidad. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <VIRTUAL MACHINE SCALE SET NAME> con sus propios valores. El parámetro <USER ASSIGNED IDENTITY> será la propiedad name de la identidad administrada asignada por el usuario, que se puede encontrar en la sección de identidades del conjunto de escalado de máquinas virtuales mediante az vmss identity show:

az vmss identity remove -g <RESOURCE GROUP> -n <VIRTUAL MACHINE SCALE SET NAME> --identities <USER ASSIGNED IDENTITY>

Si desea quitar todas las identidades administradas asignadas por el usuario de un conjunto de escalado de máquinas virtuales pero este no tiene una identidad administrada asignada por el sistema, utilice el siguiente comando:

Nota:

El valor none no distingue mayúsculas de minúsculas. Debe estar en minúscula.

az vmss update -n myVMSS -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null

Si el conjunto de escalado de máquinas virtuales tiene identidades administradas asignadas tanto por el sistema como por el usuario, puede quitar todas las identidades asignadas por el usuario si cambia para usar solo las identidades administradas asignadas por el sistema. Use el comando siguiente:

az vmss update -n myVMSS -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null 

Pasos siguientes

En este artículo, mediante PowerShell, aprenderá a realizar las operaciones de identidades administradas de recursos de Azure en un conjunto de escalado de máquinas virtuales:

  • Habilitación y deshabilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales
  • Adición y eliminación de una identidad administrada asignada por el usuario en un conjunto de escalado de máquinas virtuales

Nota:

Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Consulte Instalación de Azure PowerShell para empezar. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

Requisitos previos

Identidad administrada asignada por el sistema

En esta sección, aprenderá a habilitar y quitar una identidad administrada asignada por el sistema con Azure PowerShell.

Habilitación de la identidad administrada asignada por el sistema durante la creación de un conjunto de escalado de máquinas virtuales de Azure

Para crear un conjunto de escalado de máquinas virtuales con la identidad administrada asignada por el sistema habilitada:

  1. Consulte el ejemplo 1 en el artículo de referencia del cmdlet New-AzVmssConfig para crear un conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema. Agregue el parámetro -IdentityType SystemAssigned al cmdlet New-AzVmssConfig:

    $VMSS = New-AzVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg -IdentityType SystemAssigned`
    

Habilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure existente

Si necesita habilitar una identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure existente:

  1. Asegúrese de que la cuenta que está usando pertenece a un rol que le conceda permisos de escritura en el conjunto de escalado de máquinas virtuales, como "Colaborador de la máquina virtual":

  2. Recupere las propiedades del conjunto de escalado de máquinas virtuales mediante el cmdlet Get-AzVmss. Luego, para habilitar una identidad administrada asignada por el sistema, use el modificador -IdentityType en el cmdlet Update-AzVmss:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name -myVmss -IdentityType "SystemAssigned"
    

Deshabilitación de la identidad administrada asignada por el sistema de un conjunto de escalado de máquinas virtuales de Azure

Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita la identidad administrada asignada por el sistema, pero aún necesita identidades administradas asignadas por el usuario, use el siguiente cmdlet:

  1. Asegúrese de que la cuenta pertenece a un rol que le conceda permisos de escritura en el conjunto de escalado de máquinas virtuales, como "Colaborador de la máquina virtual":

  2. Ejecute el siguiente cmdlet:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "UserAssigned"
    
  3. Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita la identidad administrada asignada por el sistema y no tiene identidades administradas asignadas por el usuario, use el siguiente comando:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType None
    

Identidad administrada asignada por el usuario

En esta sección, aprenderá a agregar y quitar una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales mediante Azure PowerShell.

Asignación de una identidad administrada asignada por el usuario durante la creación de un conjunto de escalado de máquinas virtuales de Azure

Actualmente, no se puede crear un conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el usuario mediante PowerShell. Consulte la sección siguiente sobre cómo agregar una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales existente. Compruebe si hay actualizaciones.

Asignación de una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales de Azure existente

Para asignar una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales de Azure existente:

  1. Asegúrese de que la cuenta pertenece a un rol que le conceda permisos de escritura en el conjunto de escalado de máquinas virtuales, como "Colaborador de la máquina virtual":

  2. Recupere las propiedades del conjunto de escalado de máquinas virtuales mediante el cmdlet Get-AzVM. A continuación, para asignar una identidad administrada asignada por el usuario al conjunto de escalado de máquinas virtuales, use los modificadores -IdentityType y -IdentityID en el cmdlet Update-AzVmss. Reemplace <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP>, <USER ASSIGNED ID1>, USER ASSIGNED ID2 con sus propios valores.

    Importante

    Al crear identidades administradas asignadas por el usuario, el nombre debe comenzar con una letra o un número, y puede incluir una combinación de caracteres alfanuméricos, guiones (-) y guiones bajos (_). Para que la asignación a una máquina virtual o un conjunto de escalado de máquinas virtuales funcione correctamente, el nombre está limitado a 24 caracteres. Para más información, consulte Preguntas más frecuentes y problemas conocidos.

    Update-AzVmss -ResourceGroupName <RESOURCE GROUP> -Name <VMSS NAME> -IdentityType UserAssigned -IdentityID "<USER ASSIGNED ID1>","<USER ASSIGNED ID2>"
    

Eliminación de una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales de Azure

Si el conjunto de escalado de máquinas virtuales tiene varias identidades administradas asignadas por el usuario, puede quitarlas todas, menos la última, utilizando los comandos siguientes. Asegúrese de reemplazar los valores de los parámetros <RESOURCE GROUP> y <VIRTUAL MACHINE SCALE SET NAME> con sus propios valores. <USER ASSIGNED IDENTITY NAME> es la propiedad de nombre de la identidad administrada asignada por el usuario, que debe permanecer en el conjunto de escalado de máquinas virtuales. Esta información se puede encontrar en la sección de identidad del conjunto de escalado de máquinas virtuales mediante az vmss show:

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType UserAssigned -IdentityID "<USER ASSIGNED IDENTITY NAME>"

Si desea quitar todas las identidades administradas asignadas por el usuario de un conjunto de escalado de máquinas virtuales pero este no tiene una identidad administrada asignada por el sistema, utilice el siguiente comando:

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType None

Si el conjunto de escalado de máquinas virtuales tiene identidades administradas asignadas tanto por el sistema como por el usuario, puede quitar todas las identidades administradas asignadas por el usuario si cambia para usar solo las identidades administradas asignadas por el sistema.

Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "SystemAssigned"

Pasos siguientes

En este artículo, aprenderá a realizar las siguientes operaciones de identidades administradas de recursos de Azure en un conjunto de escalado de máquinas virtuales de Azure mediante la plantilla de implementación de Azure Resource Manager:

  • Habilitación y deshabilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure
  • Adición y eliminación de una identidad asignada por el usuario un conjunto de escalado de máquinas virtuales de Azure

Requisitos previos

Plantillas del Administrador de recursos de Azure

Al igual que con Azure Portal y los scripts, las plantillas de Azure Resource Manager proporcionan la capacidad de implementar recursos nuevos o modificados definidos por un grupo de recursos de Azure. Existen varias opciones para la edición e implementación de plantillas, tanto localmente como basadas en el portal, incluidas:

Independientemente de la opción que elija, la sintaxis de la plantilla es la misma durante la implementación inicial y posteriores implementaciones. La habilitación de identidades administradas de recursos de Azure en una máquina virtual existente o nueva se realiza de la misma forma. Además, de forma predeterminada, Azure Resource Manager realiza una actualización incremental en las implementaciones.

Identidad administrada asignada por el sistema

En esta sección, se habilita y deshabilita la identidad administrada asignada por el sistema con una plantilla de Azure Resource Manager.

Habilitación de la identidad administrada asignada por el sistema durante el uso o la creación de un conjunto de escalado de máquinas virtuales

  1. Independientemente de que inicie sesión localmente en Azure o mediante Azure Portal, use una cuenta que esté asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales.

  2. Para habilitar la identidad administrada asignada por el sistema, cargue la plantilla en un editor, busque el recurso de interés Microsoft.Compute/virtualMachinesScaleSets en la sección de recursos y agregue la propiedad identity en el mismo nivel que la propiedad "type": "Microsoft.Compute/virtualMachinesScaleSets". Use la sintaxis siguiente:

    "identity": {
        "type": "SystemAssigned"
    }
    
  3. Cuando haya terminado, deben agregarse las siguientes secciones a la sección de recursos de la plantilla para que se parezca al ejemplo siguiente:

     "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "SystemAssigned",
             },
            "properties": {
                 //other resource provider properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
    
                 }
             }
         }
     ]
    

Deshabilitación de una identidad administrada asignada por el sistema de un conjunto de escalado de máquinas virtuales de Azure

Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita una identidad administrada asignada por el sistema, haga lo siguiente:

  1. Independientemente de que inicie sesión localmente en Azure o mediante Azure Portal, use una cuenta que esté asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales.

  2. Cargue la plantilla en un editor y busque el Microsoft.Compute/virtualMachineScaleSetsrecurso de interés dentro de la sección resources. Si dispone de una VM que solo tenga una identidad administrada asignada por el sistema, puede deshabilitarla cambiando el tipo de identidad a None.

    Microsoft.Compute/virtualMachineScaleSets versión de API 2018-06-01

    Si apiVersion es 2018-06-01 y la VM tiene identidades administradas asignadas tanto por el usuario como por el sistema, quite SystemAssigned del tipo de identidad y mantenga UserAssigned junto con los valores del diccionario userAssignedIdentities.

    Microsoft.Compute/virtualMachineScaleSets versión de API 2018-06-01

    Si apiVersion es 2017-12-01 y el conjunto de escalado de máquinas virtuales tiene identidades administradas asignadas tanto por el usuario como por el sistema, quite SystemAssigned del tipo de identidad y mantenga UserAssigned junto con la matriz identityIds de las identidades administradas asignadas por el usuario.

    En el ejemplo siguiente se muestra cómo quitar una identidad administrada asignada por el sistema de un conjunto de escalado de máquinas virtuales sin identidades administradas asignadas por el usuario:

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "location": "[parameters(Location')]",
        "identity": {
            "type": "None"
         }
    
    }
    

Identidad administrada asignada por el usuario

En esta sección, asignará una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales mediante la plantilla de Azure Resource Manager.

Nota:

Para crear una identidad administrada asignada por el usuario mediante una plantilla de Azure Resource Manager, consulte Create a user-assigned managed identity (Creación de una identidad administrada asignada por el usuario).

Asignación de una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales

  1. En el elemento resources, agregue la siguiente entrada para asignar una identidad administrada asignada por el usuario al conjunto de escalado de máquinas virtuales. No olvide reemplazar <USERASSIGNEDIDENTITY> con el nombre de la identidad administrada asignada por el usuario que ha creado.

    Microsoft.Compute/virtualMachineScaleSets versión de API 2018-06-01

    Si apiVersion es 2018-06-01, las identidades administradas asignadas por el usuario se almacenan en el formato de diccionario userAssignedIdentities y el valor <USERASSIGNEDIDENTITYNAME> debe almacenarse en una variable definida en la sección variables de la plantilla.

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "location": "[parameters(Location')]",
        "identity": {
            "type": "userAssigned",
            "userAssignedIdentities": {
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
            }
        }
    
    }
    

    Microsoft.Compute/virtualMachineScaleSets versión de API 2017-12-01

    Si apiVersion es 2017-12-01 o anterior, las identidades administradas asignadas por el usuario se almacenan en la matriz identityIds y el valor <USERASSIGNEDIDENTITYNAME> debe almacenarse en una variable definida en la sección de variables de la plantilla.

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2017-03-30",
        "location": "[parameters(Location')]",
        "identity": {
            "type": "userAssigned",
            "identityIds": [
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITY>'))]"
            ]
        }
    }
    
  2. Cuando haya terminado, la plantilla debería tener un aspecto similar al siguiente:

    Microsoft.Compute/virtualMachineScaleSets versión de API 2018-06-01

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "UserAssigned",
                 "userAssignedIdentities": {
                     "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
                 }
             },
            "properties": {
                 //other virtual machine properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
                 }
             }
         }
     ]
    

    Microsoft.Compute/virtualMachines versión 2017-12-01 de la API

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2017-12-01",
             "type": "Microsoft.Compute/virtualMachineScaleSets",
             "name": "[variables('vmssName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "UserAssigned",
                 "identityIds": [
                     "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
                 ]
             },
            "properties": {
                 //other virtual machine properties...
                 "virtualMachineProfile": {
                     //other virtual machine profile properties...
                 }
             }
         }
     ]
    

Eliminación de una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales de Azure

Si tiene un conjunto de escalado de máquinas virtuales que ya no necesita una identidad administrada asignada por el usuario, haga lo siguiente:

  1. Independientemente de que inicie sesión localmente en Azure o mediante Azure Portal, use una cuenta que esté asociada a la suscripción de Azure que contiene el conjunto de escalado de máquinas virtuales.

  2. Cargue la plantilla en un editor y busque el Microsoft.Compute/virtualMachineScaleSetsrecurso de interés dentro de la sección resources. Si dispone de un conjunto de escalado de máquinas virtuales que solo tenga una identidad administrada asignada por el usuario, puede deshabilitarla cambiando el tipo de identidad a None.

    En el ejemplo siguiente se muestra cómo quitar todas las identidades administradas asignadas por un usuario de una VM sin identidades administradas asignadas por el sistema:

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2018-06-01",
        "location": "[parameters(Location')]",
        "identity": {
            "type": "None"
         }
    }
    

    Microsoft.Compute/virtualMachineScaleSets versión de API 2018-06-01

    Para quitar una identidad administrada asignada por un usuario único desde un conjunto de escalado de máquinas virtuales, quítela del diccionario userAssignedIdentities.

    Si tiene una identidad asignada por el sistema, consérvela en el valor type de identity.

    Microsoft.Compute/virtualMachineScaleSets versión de API 2017-12-01

    Para quitar una identidad administrada asignada por un usuario único desde un conjunto de escalado de máquinas virtuales, quítela de la matriz identityIds.

    Si tiene una identidad administrada asignada por el sistema, consérvela en el valor type de identity.

Pasos siguientes

En este artículo, usará CURL para llamar al punto de conexión REST de Azure Resource Manager, con lo que aprenderá a realizar las siguientes operaciones de identidades administradas de recursos de Azure en un conjunto de escalado de máquinas virtuales:

  • Habilitación y deshabilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales de Azure
  • Adición y eliminación de una identidad asignada por el usuario un conjunto de escalado de máquinas virtuales de Azure

Si aún no tiene una cuenta de Azure, regístrese para una cuenta gratuita antes de continuar.

Prerrequisitos

  • Si no está familiarizado con las identidades administradas para los recursos de Azure, vea ¿Qué son las identidades administradas para recursos de Azure?. Para obtener información sobre los tipos de identidad administrada asignados por el sistema y asignados por el usuario, consulte Tipos de identidad administrada.

  • Para llevar a cabo las operaciones de administración de este artículo, su cuenta debe tener las siguientes asignaciones de roles de Azure:

    Nota:

    No se requiere ninguna otra asignación de roles de directorio de Microsoft Entra.

Identidad administrada asignada por el sistema

En esta sección, aprenderá a habilitar y deshabilitar una identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales mediante CURL para llamar al punto de conexión REST de Azure Resource Manager.

Habilitación de la identidad administrada asignada por el sistema durante la creación de un conjunto de escalado de máquinas virtuales

Para crear un conjunto de escalado de máquinas virtuales con la identidad administrada asignada por el sistema habilitada, debe crear un conjunto de escalado de máquinas virtuales y recuperar un token de acceso para usar CURL y llamar al punto de conexión de Resource Manager con el valor del tipo de identidad administrada asignada por el sistema.

  1. Cree un grupo de recursos para contener e implementar el conjunto de escalado de máquinas virtuales y sus recursos relacionados, con az group create. Puede omitir este paso si ya tiene un grupo de recursos que le gustaría usar en su lugar:

    az group create --name myResourceGroup --location westus
    
  2. Cree una interfaz de red para el conjunto de escalado de máquinas virtuales:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  4. Utilice Azure Cloud Shell para crear un conjunto de escalado de máquinas virtuales mediante CURL para llamar al punto de conexión REST de Azure Resource Manager. En el ejemplo siguiente se crea un conjunto de escalado de máquinas virtuales denominado myVMSS en myResourceGroup con una identidad administrada asignada por el sistema, como se identificó en el cuerpo de la solicitud por el valor "identity":{"type":"SystemAssigned"}. Reemplace <ACCESS TOKEN> por el valor que ha recibido en el paso anterior cuando solicitó un token de acceso de portador y el valor <SUBSCRIPTION ID> según sea apropiado para su entorno.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"SystemAssigned"},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "location":"eastus",
        "identity":{
           "type":"SystemAssigned"
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }  
    

Habilitación de la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales existente

Para habilitar la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales existente, debe adquirir un token de acceso y, después, utilizar CURL para llamar al punto de conexión REST de Resource Manager y actualizar el tipo de identidad.

  1. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  2. Use el comando CURL siguiente para llamar al punto de conexión REST de Azure Resource Manager para habilitar la identidad administrada asignada por el sistema en el conjunto de escalado de máquinas virtuales, como se identifica en el cuerpo de la solicitud por el valor {"identity":{"type":"SystemAssigned"} para un conjunto de escalado de máquinas virtuales denominado myVMSS. Reemplace <ACCESS TOKEN> por el valor que ha recibido en el paso anterior cuando solicitó un token de acceso de portador y el valor <SUBSCRIPTION ID> según sea apropiado para su entorno.

    Importante

    Para asegurarse de que no elimina ninguna de las identidades administradas asignadas por el usuario que están asignadas al conjunto de escalado de máquinas virtuales, necesita enumerar las identidades asignadas por el usuario mediante este comando CURL: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Si tiene asignadas identidades administradas asignadas por el usuario al conjunto de escalado de máquinas virtuales como se identifica en el valor identity de la respuesta, vaya al paso 3 que muestra cómo conservar las identidades administradas asignadas por el usuario mientras se habilita la identidad administrada asignada por el sistema en el conjunto de escalado de máquinas virtuales.

     curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned"
        }
     }
    
  3. Para habilitar la identidad administrada asignada por el sistema en un conjunto de escalado de máquinas virtuales con identidades administradas existentes asignadas por el usuario, debe agregar SystemAssigned al valor type.

    Por ejemplo, si el conjunto de escalado de máquinas virtuales tiene asignadas las identidades administradas asignadas por el usuario ID1 y ID2, y desea agregar una identidad administrada asignada por el sistema a dicho conjunto de escalado de máquinas virtuales, utilice la siguiente llamada CURL. Reemplace <ACCESS TOKEN> y <SUBSCRIPTION ID> por los valores adecuados para su entorno.

    La versión de API 2018-06-01 almacena las identidades administradas asignadas por el usuario en el valor userAssignedIdentities en un formato de diccionario, en contraposición con el valor identityIds en formato de matriz que se usaba en la versión 2017-12-01 de la API.

    VERSIÓN DE API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
              },
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{
    
              }
           }
        }
     }
    

    VERSIÓN DE API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1",
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"
           ]
        }
     }
    

Deshabilitación de una identidad administrada asignada por el sistema desde un conjunto de escalado de máquinas virtuales

Para deshabilitar la identidad asignada por el sistema en un conjunto de escalado de máquinas virtuales existente, debe adquirir un token de acceso y, después, utilizar CURL para llamar al punto de conexión REST de Resource Manager y actualizar el tipo de identidad a None.

  1. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  2. Actualice el conjunto de escalado mediante CURL para llamar al punto de conexión REST de Azure Resource Manager para deshabilitar la identidad administrada asignada por el sistema. En el ejemplo siguiente, se deshabilita una identidad administrada asignada por el sistema en el cuerpo de la solicitud por el valor {"identity":{"type":"None"}} desde un conjunto de escalado de máquinas virtuales denominado myVMSS. Reemplace <ACCESS TOKEN> por el valor que ha recibido en el paso anterior cuando solicitó un token de acceso de portador y el valor <SUBSCRIPTION ID> según sea apropiado para su entorno.

    Importante

    Para asegurarse de que no elimina ninguna de las identidades administradas asignadas por el usuario que están asignadas al conjunto de escalado de máquinas virtuales, necesita enumerar las identidades asignadas por el usuario mediante este comando CURL: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Si tiene asignadas identidades administradas asignadas por el usuario al conjunto de escalado de máquinas virtuales, vaya al paso 3 que muestra cómo conservar las identidades administradas asignadas por el usuario mientras se quita la identidad administrada asignada por el sistema del conjunto de escalado de máquinas virtuales.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"None"
        }
     }
    

    Para quitar la identidad administrada asignada por el sistema de un conjunto de escalado de máquinas virtuales que tiene identidades administradas asignadas por el usuario, quite SystemAssigned del valor {"identity":{"type:" "}} mientras mantiene el valor UserAssigned y los valores de diccionario userAssignedIdentities, si está utilizando la versión de API 2018-06-01. Si está usando la versión de API 2017-12-01 o versiones anteriores, mantenga la matriz identityIds.

Identidad administrada asignada por el usuario

En esta sección, aprenderá a agregar y quitar una identidad administrada asignada por el usuario en un conjunto de escalado de máquinas virtuales mediante CURL para llamar al punto de conexión REST de Azure Resource Manager.

Asignación de una identidad administrada asignada por el usuario durante la creación de un conjunto de escalado de máquinas virtuales

  1. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  2. Cree una interfaz de red para el conjunto de escalado de máquinas virtuales:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  4. Cree una identidad asignada por el usuario mediante las instrucciones que se encuentran aquí: Creación de una identidad administrada asignada por el usuario.

  5. Cree un conjunto de escalado de máquinas virtuales con CURL para llamar al punto de conexión REST de Azure Resource Manager. En el ejemplo siguiente se crea un conjunto de escalado de máquinas virtuales denominado myVMSS en el grupo de recursos myResourceGroup con una identidad administrada asignada por el usuario ID1, como se identificó en el cuerpo de la solicitud por el valor "identity":{"type":"UserAssigned"}. Reemplace <ACCESS TOKEN> por el valor que ha recibido en el paso anterior cuando solicitó un token de acceso de portador y el valor <SUBSCRIPTION ID> según sea apropiado para su entorno.

    VERSIÓN DE API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"UserAssigned","userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "location":"eastus",
        "identity":{
           "type":"UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              }
           }
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }
    

    VERSIÓN DE API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PUT -d '{"sku":{"tier":"Standard","capacity":3,"name":"Standard_D1_v2"},"location":"eastus","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"overprovision":true,"virtualMachineProfile":{"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"createOption":"FromImage"}},"osProfile":{"computerNamePrefix":"myVMSS","adminUsername":"azureuser","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaceConfigurations":[{"name":"myVMSS","properties":{"primary":true,"enableIPForwarding":true,"ipConfigurations":[{"name":"myVMSS","properties":{"subnet":{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"}}}]}}]}},"upgradePolicy":{"mode":"Manual"}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "sku":{
           "tier":"Standard",
           "capacity":3,
           "name":"Standard_D1_v2"
        },
        "location":"eastus",
        "identity":{
           "type":"UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        },
        "properties":{
           "overprovision":true,
           "virtualMachineProfile":{
              "storageProfile":{
                 "imageReference":{
                    "sku":"2016-Datacenter",
                    "publisher":"MicrosoftWindowsServer",
                    "version":"latest",
                    "offer":"WindowsServer"
                 },
                 "osDisk":{
                    "caching":"ReadWrite",
                    "managedDisk":{
                       "storageAccountType":"StandardSSD_LRS"
                    },
                    "createOption":"FromImage"
                 }
              },
              "osProfile":{
                 "computerNamePrefix":"myVMSS",
                 "adminUsername":"azureuser",
                 "adminPassword":"myPassword12"
              },
              "networkProfile":{
                 "networkInterfaceConfigurations":[
                    {
                       "name":"myVMSS",
                       "properties":{
                          "primary":true,
                          "enableIPForwarding":true,
                          "ipConfigurations":[
                             {
                                "name":"myVMSS",
                                "properties":{
                                   "subnet":{
                                      "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"
                                   }
                                }
                             }
                          ]
                       }
                    }
                 ]
              }
           },
           "upgradePolicy":{
              "mode":"Manual"
           }
        }
     }
    

Asignación de una identidad administrada asignada por el usuario a un conjunto de escalado de máquinas virtuales de Azure existente

  1. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  2. Cree una identidad administrada asignada por el usuario mediante las instrucciones que se encuentran aquí: Creación de una identidad administrada asignada por el usuario.

  3. Para asegurarse de que no elimina las identidades administradas asignadas por el usuario o por el sistema que están asignadas al conjunto de escalado de máquinas virtuales, necesita enumerar los tipos de identidades asignados al conjunto de escalado de máquinas virtuales mediante el comando CURL siguiente. Si ha administrado identidades asignadas al conjunto de escalado de máquinas virtuales, estas se enumeran en el valor identity.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>"
    
    GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.
  4. Si no tiene ninguna identidad administrada asignada por el usuario o por el sistema en el conjunto de escalado de máquinas virtuales, use el siguiente comando CURL para llamar al punto de conexión REST de Azure Resource Manager para asignar la primera identidad administrada asignada por el usuario al conjunto de escalado de máquinas virtuales. Si tiene asignadas identidades administradas asignadas por el usuario o por el sistema al conjunto de escalado de máquinas virtuales, vaya al paso 5 que muestra cómo agregar varias identidades administradas asignadas por el usuario a un conjunto de escalado de máquinas virtuales mientras se mantiene la identidad administrada asignada por el sistema.

    En el ejemplo siguiente se asigna una identidad administrada asignada por el usuario, ID1, a un conjunto de escalado de máquinas virtuales denominado myVMSS en el grupo de recursos myResourceGroup. Reemplace <ACCESS TOKEN> por el valor que ha recibido en el paso anterior cuando solicitó un token de acceso de portador y el valor <SUBSCRIPTION ID> según sea apropiado para su entorno.

    VERSIÓN DE API 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"userAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              }
           }
        }
     }
    

    VERSIÓN DE API 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"userAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"userAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    
  5. Si ya dispone de una identidad administrada asignada por el usuario o por el sistema y está asignada al conjunto de escalado de máquinas virtuales:

    VERSIÓN DE API 2018-06-01

    Agregue la identidad administrada asignada por el usuario al valor de diccionario userAssignedIdentities.

    Por ejemplo, si tiene una identidad administrada asignada por el sistema y una identidad administrada asignada por el usuario ID1 actualmente asignadas al conjunto de escalado de máquinas virtuales y quiere agregarles la identidad administrada asignada por el usuario ID2:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{},"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{}}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1":{
    
              },
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":{
    
              }
           }
        }
     }
    

    VERSIÓN DE API 2017-12-01

    Conserve las identidades administradas asignadas por el usuario y que le gustaría mantener en el valor de matriz identityIds al tiempo que agrega la nueva identidad administrada asignada por el usuario.

    Por ejemplo, si tiene una identidad asignada por el sistema y una identidad administrada asignada por el usuario ID1 actualmente asignadas al conjunto de escalado de máquinas virtuales y quiere agregarles la identidad administrada asignada por el usuario ID2:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1","/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1",
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2"
           ]
        }
     }
    

Eliminación de una identidad administrada asignada por el usuario de un conjunto de escalado de máquinas virtuales

  1. Recupere un token de acceso de portador, que utilizará en el siguiente paso en el encabezado de autorización para crear el conjunto de escalado de máquinas virtuales con una identidad administrada asignada por el sistema.

    az account get-access-token
    
  2. Para asegurarse de que no elimina ninguna identidad administrada asignada por el usuario o por el sistema que está asignada al conjunto de escalado de máquinas virtuales y de que no quita la identidad administrada asignada por el sistema, necesita enumerar las identidades administradas mediante el comando CURL siguiente:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>" 
    
    GET https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachineScaleSets/<VMSS NAME>?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Si ha administrado identidades asignadas a la máquina virtual, se enumeran en la respuesta del valor identity.

    Por ejemplo, si tiene identidades administradas asignadas por el usuario ID1 y ID2, y que están asignadas al conjunto de escalado de máquinas virtuales, y sólo quiere mantener ID1 asignada y conservar la identidad administrada asignada por el sistema:

    VERSIÓN DE API 2018-06-01

    Agregue null a la identidad administrada asignada por el usuario que quiere quitar:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned, UserAssigned", "userAssignedIdentities":{"/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null}}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned, UserAssigned",
           "userAssignedIdentities":{
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID2":null
           }
        }
     }
    

    VERSIÓN DE API 2017-12-01

    Conserve solo las identidades administradas asignadas por el usuario que le gustaría mantener en la matriz identityIds:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01' -X PATCH -d '{"identity":{"type":"SystemAssigned,UserAssigned", "identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
    
    PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2017-12-01 HTTP/1.1
    

    Encabezados de solicitud

    Encabezado de solicitud Descripción
    Content-Type Necesario. Establézcalo en application/json.
    Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

    Cuerpo de la solicitud

     {
        "identity":{
           "type":"SystemAssigned,UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    

Si el conjunto de escalado de máquinas virtuales tiene identidades administradas asignadas tanto por el sistema como por el usuario, puede quitar todas las identidades administradas asignadas por el usuario si cambia para usar solo las asignadas por el sistema:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"SystemAssigned"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1

Encabezados de solicitud

Encabezado de solicitud Descripción
Content-Type Necesario. Establézcalo en application/json.
Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

Cuerpo de la solicitud

{
   "identity":{
      "type":"SystemAssigned"
   }
}

Si el conjunto de escalado de máquinas virtuales solo tiene identidades administradas asignadas por el usuario y desea quitarlas todas, utilice el comando siguiente:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01' -X PATCH -d '{"identity":{"type":"None"}}' -H "Content-Type: application/json" -H Authorization:"Bearer <ACCESS TOKEN>"
PATCH https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myVMSS?api-version=2018-06-01 HTTP/1.1

Encabezados de solicitud

Encabezado de solicitud Descripción
Content-Type Necesario. Establézcalo en application/json.
Autorización Necesario. Establézcalo en un token de acceso Bearer válido.

Cuerpo de la solicitud

{
   "identity":{
      "type":"None"
   }
}

Pasos siguientes

Para obtener información sobre cómo crear, enumerar o eliminar identidades administradas asignadas por el usuario mediante REST, consulte: