Condividi tramite


Configurare identità gestite per le risorse di Azure in un set di scalabilità di macchine virtuali

Identità gestite per le risorse di Azure è una funzionalità di Microsoft Entra ID. Tutti i servizi di Azure che supportano le identità gestite per le risorse di Azure sono soggetti alla sequenza temporale di tali entità. Prima di iniziare, assicurarsi di esaminare lo stato di disponibilità delle identità gestite per la risorsa e i problemi noti.

Le identità gestite per le risorse di Azure offrono ai servizi di Azure un'identità gestita automaticamente in Microsoft Entra ID. È possibile usare questa identità per l'autenticazione in qualsiasi servizio che supporta l'autenticazione di Microsoft Entra senza dover immettere le credenziali nel codice.

Per informazioni sulla definizione e i dettagli di Criteri di Azure, vedere Usare Criteri di Azure per assegnare le identità gestite (anteprima).

Questo articolo illustra come eseguire le operazioni relative alle identità gestite per le risorse di Azure in un set di scalabilità di macchine virtuali usando il portale di Azure:

  • Se non si ha familiarità con le identità gestite per le risorse di Azure, vedere la sezione sulla panoramica.

  • Se non si ha un account Azure, registrarsi per ottenere un account gratuito prima di continuare.

  • Per eseguire le operazioni di gestione illustrate in questo articolo, l'account deve avere le assegnazioni di ruolo di Azure seguenti:

    Nota

    Non sono necessarie altre assegnazioni di ruolo della directory di Microsoft Entra.

Identità gestita assegnata dal sistema

Questa sezione descriverà come abilitare e disabilitare un'identità gestita assegnata dal sistema tramite il portale di Azure.

Abilitare l'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali

Attualmente il portale di Azure non supporta l'abilitazione dell'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali. In alternativa, consultare la guida introduttiva seguente per creare prima un set di scalabilità di macchine virtuali e quindi proseguire con la sezione successiva per informazioni dettagliate sull'abilitazione dell'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali:

Abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali esistente

Suggerimento

I passaggi descritti in questo articolo possono variare leggermente in base al portale da cui si inizia.

Per abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di cui è stato originariamente eseguito il provisioning senza tale identità:

  1. Accedere al portale di Azure usando un account associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali.

  2. Passare al set di scalabilità di macchine virtuali desiderato.

  3. In Assegnata dal sistema, Stato, selezionare Abilita e quindi fare clic su Salva:

    Screenshot che mostra la pagina

Rimuovere un'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali

Se è disponibile un set di scalabilità di macchine virtuali per cui non è più necessaria un'identità gestita assegnata dal sistema:

  1. Accedere al portale di Azure usando un account associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali. Assicurarsi anche che l'account appartenga a un ruolo che fornisce le autorizzazioni di scrittura nel set di scalabilità di macchine virtuali.

  2. Passare al set di scalabilità di macchine virtuali desiderato.

  3. In Assegnata dal sistema, Stato, selezionare Disabilita e quindi fare clic su Salva:

    Screenshot che mostra la pagina di configurazione.

Identità gestita assegnata dall'utente

Questa sezione illustra come aggiungere e rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali usando il portale di Azure.

Assegnare un'identità gestita assegnata dall'utente durante la creazione di un set di scalabilità di macchine virtuali

Attualmente il portale di Azure non supporta l'associazione di un'identità gestita assegnata dall'utente durante la creazione di un set di scalabilità di macchine virtuali. In alternativa, consultare la guida introduttiva seguente per creare prima un set di scalabilità di macchine virtuali e quindi proseguire con la sezione successiva per informazioni dettagliate sull'associazione di un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali:

Associare l'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali esistente

  1. Accedere al portale di Azure usando un account associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali.

  2. Passare al set di scalabilità di macchine virtuali desiderato e fare clic su Identità, Assegnata dall'utente e quindi su +Aggiungi.

    Screenshot che mostra l'aggiunta dell'identità assegnata dall'utente al set di scalabilità di macchine virtuali.

  3. Fare clic sull'identità assegnata dall'utente da aggiungere al set di scalabilità di macchine virtuali e quindi su Aggiungi.

    Screenshot che mostra come aggiungere un'identità assegnata dall'utente a un set di scalabilità di macchine virtuali.

Rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali

  1. Accedere al portale di Azure usando un account associato alla sottoscrizione di Azure che contiene la VM.

  2. Passare al set di scalabilità di macchine virtuali desiderato e selezionare Identità, Assegnata dall'utente e il nome dell'identità gestita assegnata dall'utente da eliminare e quindi fare clic su Rimuovi (scegliere nel riquadro di conferma).

    Screenshot che mostra come rimuovere l'identità assegnata dall'utente da un set di scalabilità di macchine virtuali.

Passaggi successivi

Questo articolo descrive come eseguire le operazioni seguenti per le identità gestite per le risorse di Azure in un set di scalabilità di macchine virtuali di Azure tramite l'interfaccia della riga di comando di Azure:

  • Abilitare e disabilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure
  • Aggiungere e rimuovere un'identità gestita assegnata dall'utente in un set di scalabilità di macchine virtuali di Azure

Se non si ha un account Azure, registrarsi per ottenere un account gratuito prima di continuare.

Prerequisiti

  • Se non si ha familiarità con le identità gestite per le risorse di Azure, vedere Informazioni sulle identità gestite per le risorse di Azure. Per informazioni sui tipi di identità gestite assegnate dal sistema e assegnate dall'utente, vedere Tipi di identità gestita.

  • Per eseguire le operazioni di gestione illustrate in questo articolo, l'account necessita delle assegnazioni di controllo degli accessi in base al ruolo di Azure seguenti:

    • Collaboratore macchina virtuale per creare un set di scalabilità di macchine virtuali e abilitare e rimuovere da un set di scalabilità di macchine virtuali l'identità gestita assegnata dal sistema e/o dall'utente.

    • Collaboratore di identità gestite per creare un'identità gestita assegnata dall'utente.

    • Operatore identità gestita per assegnare e rimuovere un'identità gestita assegnata dall'utente da e verso un set di scalabilità di macchine virtuali.

    Nota

    Non sono necessarie altre assegnazioni di ruolo della directory di Microsoft Entra.

Identità gestita assegnata dal sistema

Questa sezione descrive come abilitare e disabilitare l'identità gestita assegnata dal sistema per un set di scalabilità di macchine virtuali di Azure mediante l'interfaccia della riga di comando di Azure.

Abilitare l'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali di Azure

Per creare un set di scalabilità di macchine virtuali con l'identità gestita assegnata dal sistema abilitata:

  1. Creare un gruppo di risorse per il contenuto e la distribuzione del set di scalabilità di macchine virtuali e delle risorse correlate, usando az group create. Se si dispone già di un gruppo di risorse da usare, è possibile ignorare questo passaggio:

    az group create --name myResourceGroup --location westus
    
  2. Creare un set di scalabilità di macchine virtuali. L'esempio seguente crea un set di scalabilità di macchine virtuali denominato myVMSS con un'identità gestita assegnata dal sistema, come richiesto dal parametro --assign-identity con i valori di --role e --scope specificati. I parametri --admin-username e --admin-password specificano il nome utente e la password dell'account amministrativo per l'accesso alla macchina virtuale. Aggiornare questi valori in base alle esigenze specifiche dell'ambiente:

    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
    

Abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure esistente

Se è necessario abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure esistente:

az vmss identity assign -g myResourceGroup -n myVMSS

Disabilitare un'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali di Azure

Se un set di scalabilità di macchine virtuali non necessità più dell'identità gestita assegnata dal sistema ma necessita ancora delle identità gestite assegnate dall'utente, usare il comando seguente:

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

Se si ha una macchina virtuale che non ha più bisogno dell'identità gestita assegnata dal sistema e non dispone di identità gestite assegnate dall'utente, usare il comando seguente:

Nota

Il valore none distingue tra maiuscole e minuscole. Deve essere costituito da caratteri in minuscolo.

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

Identità gestita assegnata dall'utente

Questa sezione descrive come abilitare e rimuovere un'identità gestita assegnata dall'utente mediante l'interfaccia della riga di comando di Azure.

Assegnare un'identità gestita assegnata dall'utente durante la creazione di un set di scalabilità di macchine virtuali

Questa sezione descrive come creare un set di scalabilità di macchine virtuali e assegnare un'identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali. Se si dispone già di un set di scalabilità di macchine virtuali che si intende usare, ignorare questa sezione e procedere alla successiva.

  1. Se si dispone già di un gruppo di risorse da usare, è possibile ignorare questo passaggio. Creare un gruppo di risorse per contenere e distribuire l'identità gestita assegnata dall'utente mediante az group create. Sostituire i valori dei parametri <RESOURCE GROUP> e <LOCATION> con valori personalizzati. :

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Creare un'identità gestita assegnata dall'utente tramite az identity create. Il parametro -g specifica il gruppo di risorse in cui viene creata l'identità gestita assegnata dall'utente, mentre il parametro -n ne specifica il nome. Sostituire i valori dei parametri <RESOURCE GROUP> e <USER ASSIGNED IDENTITY NAME> con valori personalizzati:

    Importante

    Quando si creano identità gestite assegnate dall'utente, il nome deve iniziare con una lettera o un numero e può includere una combinazione di caratteri alfanumerici, trattini (-) e caratteri di sottolineatura (_). Per il corretto funzionamento dell'assegnazione a una macchina virtuale o a un set di scalabilità di macchine virtuali, il nome può essere composto da un massimo di 24 caratteri. Per altre informazioni, vedere Domande frequenti e problemi noti.

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

    La risposta contiene i dettagli relativi all'identità gestita assegnata dall'utente creata ed è simile all'esempio seguente. Il valore id della risorsa assegnato all'identità gestita assegnata dall'utente viene usato nel passaggio seguente.

    {
         "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
         "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=00001111-aaaa-2222-bbbb-3333cccc4444",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY NAME>",
         "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Creare un set di scalabilità di macchine virtuali. L'esempio seguente crea un set di scalabilità di macchine virtuali associato alla nuova identità gestita assegnata dall'utente, come specificato dal parametro --assign-identity con i valori di --role e --scope specificati. Sostituire i valori dei parametri <RESOURCE GROUP>, <VMSS NAME>, <USER NAME>, <PASSWORD>, <USER ASSIGNED IDENTITY>, <ROLE> e <SUBSCRIPTION> con i valori desiderati.

    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>
    

Associare l'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali esistente

  1. Creare un'identità gestita assegnata dall'utente tramite az identity create. Il parametro -g specifica il gruppo di risorse in cui viene creata l'identità gestita assegnata dall'utente, mentre il parametro -n ne specifica il nome. Sostituire i valori dei parametri <RESOURCE GROUP> e <USER ASSIGNED IDENTITY NAME> con valori personalizzati:

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

    La risposta contiene i dettagli relativi all'identità gestita assegnata dall'utente creata ed è simile all'esempio seguente.

    {
         "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
         "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=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY>",
         "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Assegnare l'identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali. Sostituire i valori dei parametri <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> con valori personalizzati. <USER ASSIGNED IDENTITY> è la proprietà name della risorsa dell'identità assegnata dall'utente creata nel passaggio precedente:

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

Rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali di Azure

Per rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali, usare az vmss identity remove. Se si tratta dell'unica identità gestita assegnata dall'utente associata al set di scalabilità di macchine virtuali, UserAssigned verrà rimosso dal valore del tipo di identità. Sostituire i valori dei parametri <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> con valori personalizzati. <USER ASSIGNED IDENTITY> è la proprietà name dell'identità gestita assegnata dall'utente, che si può trovare nella sezione Identità del set di scalabilità di macchine virtuali usando az vmss identity show:

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

Se il set di scalabilità di macchine virtuali non ha un'identità gestita assegnata dal sistema e si vuole rimuovere tutte le identità gestite assegnate dall'utente al suo interno, usare il comando seguente:

Nota

Il valore none distingue tra maiuscole e minuscole. Deve essere costituito da caratteri in minuscolo.

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

Se il set di scalabilità di macchine virtuali ha identità gestite sia assegnate dal sistema che assegnate dall'utente, è possibile rimuovere tutte le identità assegnate dall'utente iniziando a usare solo identità gestite assegnate dal sistema. Utilizza il seguente comando:

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

Passaggi successivi

Questo articolo illustra come eseguire le operazioni relative alle identità gestite per le risorse di Azure in un set di scalabilità di macchine virtuali mediante PowerShell:

  • Abilitare e disabilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali
  • Aggiungere e rimuovere un'identità gestita assegnata dall'utente in un set di scalabilità di macchine virtuali

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Prerequisiti

Identità gestita assegnata dal sistema

Questa sezione descrive come abilitare e rimuovere un'identità gestita assegnata dal sistema mediante Azure PowerShell.

Abilitare l'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali di Azure

Per creare un set di scalabilità di macchine virtuali con l'identità gestita assegnata dal sistema abilitata:

  1. Vedere l'esempio 1 nell'articolo di riferimento sul cmdlet New-AzVmssConfig per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema. Aggiungere il parametro -IdentityType SystemAssigned al cmdlet New-AzVmssConfig:

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

Abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure esistente

Se è necessario abilitare un'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure esistente:

  1. Assicurarsi che l'account Azure in uso appartenga a un ruolo che fornisce autorizzazioni di scrittura per il set di scalabilità di macchine virtuali, ad esempio "Collaboratore macchina virtuale".

  2. Recuperare le proprietà del set di scalabilità di macchine virtuali usando il cmdlet Get-AzVmss. Per abilitare un'identità gestita assegnata dal sistema, usare l'opzione -IdentityType nel cmdlet Update-AzVmss:

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

Disabilitare l'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali di Azure

Se un set di scalabilità di macchine virtuali non necessità più dell'identità gestita assegnata dal sistema ma necessita ancora delle identità gestite assegnate dall'utente, usare il cmdlet seguente:

  1. Assicurarsi che l'account appartenga a un ruolo che fornisce autorizzazioni di scrittura per il set di scalabilità di macchine virtuali, ad esempio "Collaboratore macchina virtuale".

  2. Eseguire il cmdlet seguente:

    Update-AzVmss -ResourceGroupName myResourceGroup -Name myVmss -IdentityType "UserAssigned"
    
  3. Se un set di scalabilità di macchine virtuali non necessita più dell'identità gestita assegnata dal sistema e non ha identità gestite assegnate dall'utente, usare il comando seguente:

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

Identità gestita assegnata dall'utente

Questa sezione illustra come aggiungere e rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali tramite Azure PowerShell.

Assegnare un'identità gestita assegnata dall'utente durante la creazione di un set di scalabilità di macchine virtuali di Azure

Attualmente non è possibile creare un nuovo set di scalabilità di macchine virtuali con un'identità gestita assegnata dall'utente tramite PowerShell. Per informazioni sull'aggiunta di un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali esistente, vedere la sezione successiva. Consultarlo a intervalli regolari per eventuali aggiornamenti.

Assegnare un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali di Azure esistente

Per assegnare un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali di Azure esistente:

  1. Assicurarsi che l'account appartenga a un ruolo che fornisce autorizzazioni di scrittura per il set di scalabilità di macchine virtuali, ad esempio "Collaboratore macchina virtuale".

  2. Recuperare le proprietà del set di scalabilità di macchine virtuali usando il cmdlet Get-AzVM. Quindi, per assegnare un'identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali di Azure, usare le opzioni -IdentityType e -IdentityID nel cmdlet Update-AzVmss. Sostituire <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP>, <USER ASSIGNED ID1>, USER ASSIGNED ID2 con valori personalizzati.

    Importante

    Quando si creano identità gestite assegnate dall'utente, il nome deve iniziare con una lettera o un numero e può includere una combinazione di caratteri alfanumerici, trattini (-) e caratteri di sottolineatura (_). Per il corretto funzionamento dell'assegnazione a una macchina virtuale o a un set di scalabilità di macchine virtuali, il nome può essere composto da un massimo di 24 caratteri. Per altre informazioni, vedere Domande frequenti e problemi noti.

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

Rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali di Azure

Se il set di scalabilità di macchine virtuali ha più identità gestite assegnate dall'utente, è possibile rimuoverle tutte tranne l'ultima tramite i comandi seguenti. Sostituire i valori dei parametri <RESOURCE GROUP> e <VIRTUAL MACHINE SCALE SET NAME> con valori personalizzati. <USER ASSIGNED IDENTITY NAME> è la proprietà del nome dell'identità gestita assegnata dall'utente, che deve rimanere nel set di scalabilità di macchine virtuali. È possibile trovare queste informazioni nella sezione relativa all'identità del set di scalabilità di macchine virtuali usando az vmss show:

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

Se il set di scalabilità di macchine virtuali non ha un'identità gestita assegnata dal sistema e si vuole rimuovere tutte le identità gestite assegnate dall'utente al suo interno, usare il comando seguente:

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

Se il set di scalabilità di macchine virtuali ha identità gestite sia assegnate dal sistema che assegnate dall'utente, è possibile rimuovere tutte le identità gestite assegnate dall'utente iniziando a usare solo identità gestite assegnate dal sistema.

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

Passaggi successivi

Questo articolo illustra come eseguire le seguenti operazioni di identità gestite per le risorse di Azure in un set di scalabilità di macchine virtuali di Azure mediante il modello di distribuzione Azure Resource Manager:

  • Abilitare e disabilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure
  • Aggiungere e rimuovere un'identità gestita assegnata dall'utente in un set di scalabilità di macchine virtuali di Azure

Prerequisiti

Modelli di Azure Resource Manager

Analogamente al portale di Azure e all'esecuzione dello script, i modelli di gestione di Azure Resource Manager offrono la possibilità di distribuire risorse nuove o modificate definite da un gruppo di risorse di Azure. Diverse opzioni sono disponibili per la modifica e la distribuzione dei modelli, sia in locale che basati sul portale incluso quanto segue:

Indipendentemente dall'opzione scelta, la sintassi dei modelli è la stessa durante la distribuzione iniziale e la ridistribuzione. L'abilitazione delle identità gestite per le risorse di Azure in una macchina virtuale nuova o esistente viene eseguita allo stesso modo. Per impostazione predefinita Azure Resource Manager esegue inoltre un aggiornamento incrementale per le distribuzioni.

Identità gestita assegnata dal sistema

In questa sezione si abiliterà e disabiliterà l'identità gestita assegnata dal sistema tramite un modello di Azure Resource Manager.

Abilitare l'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali o per un set di scalabilità di macchine virtuali esistente

  1. Se si accede ad Azure localmente o tramite il portale di Azure, usare un account che sia associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali.

  2. Per abilitare l'identità gestita assegnata dal sistema, caricare il modello in un editor, individuare la risorsa Microsoft.Compute/virtualMachinesScaleSets interessata nella sezione risorse e aggiungere la proprietà identity allo stesso livello della proprietà "type": "Microsoft.Compute/virtualMachinesScaleSets". Usare la sintassi seguente:

    "identity": {
        "type": "SystemAssigned"
    }
    
  3. Al termine, le sezioni seguenti dovrebbero essere aggiunte alla sezione risorse del modello e dovrebbero avere un aspetto simile all'esempio mostrato di seguito:

     "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...
    
                 }
             }
         }
     ]
    

Disabilitare un'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali di Azure

Se è disponibile un set di scalabilità di macchine virtuali per cui non è più necessaria un'identità gestita assegnata dal sistema:

  1. Se si accede ad Azure localmente o tramite il portale di Azure, usare un account che sia associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali.

  2. Caricare il modello in un editor e individuare Microsoft.Compute/virtualMachineScaleSetsla risorsa interessataresources all'interno della sezione. Se si dispone di una macchina virtuale con solo un'identità gestita assegnata dal sistema, è possibile disabilitarla modificando il tipo di identità e impostandolo su None.

    Microsoft.Compute/virtualMachineScaleSets versione API 2018-06-01

    Se la versione API è 2018-06-01 e la macchina virtuale ha identità gestite assegnate sia dal sistema sia dall'utente, rimuovere SystemAssigned dal tipo di identità e mantenere UserAssigned insieme ai valori di dizionario userAssignedIdentities.

    Microsoft.Compute/virtualMachineScaleSets versione API 2018-06-01

    Se la versione API è 2017-12-01 e il set di scalabilità di macchine virtuali ha identità gestite assegnate sia dal sistema sia dall'utente, rimuovere SystemAssigned dal tipo di identità e mantenere UserAssigned insieme alla matrice identityIds delle identità gestite assegnate dall'utente.

    L'esempio seguente mostra come rimuovere un'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali senza identità gestite assegnate dall'utente:

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

Identità gestita assegnata dall'utente

In questa sezione verrà associata un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali mediante il modello di Azure Resource Manager.

Nota

Per creare un'identità gestita assegnata dall'utente usando un modello di Azure Resource Manager, vedere Creare un'identità gestita assegnata dall'utente.

Associare l'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali

  1. Nell'elemento resources aggiungere la voce seguente per associare un'identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali. Assicurarsi di sostituire <USERASSIGNEDIDENTITY> con il nome dell'identità gestita assegnata dall'utente che è stata creata.

    Microsoft.Compute/virtualMachineScaleSets versione API 2018-06-01

    Se la versione API è 2018-06-01, le identità gestite assegnate dall'utente vengono archiviate nel formato dizionario userAssignedIdentities e il valore <USERASSIGNEDIDENTITYNAME> deve essere archiviato in una variabile definita nella sezione variables del modello.

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

    Microsoft.Compute/virtualMachineScaleSets versione API 2017-12-01

    Se apiVersion è 2017-12-01 o una versione precedente, le identità gestite assegnate dall'utente vengono archiviate nella matrice identityIds e il valore <USERASSIGNEDIDENTITYNAME> deve essere archiviato in una variabile definita nella sezione variabili del modello.

    {
        "name": "[variables('vmssName')]",
        "apiVersion": "2017-03-30",
        "location": "[parameters(Location')]",
        "identity": {
            "type": "userAssigned",
            "identityIds": [
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITY>'))]"
            ]
        }
    }
    
  2. Al termine il modello dovrebbe essere simile al seguente:

    Microsoft.Compute/virtualMachineScaleSets versione 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 versione API 2017-12-01

    "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...
                 }
             }
         }
     ]
    

Rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali di Azure

Se è disponibile un set di scalabilità di macchine virtuali per cui non è più necessaria un'identità gestita assegnata dall'utente:

  1. Se si accede ad Azure localmente o tramite il portale di Azure, usare un account che sia associato alla sottoscrizione di Azure che contiene il set di scalabilità di macchine virtuali.

  2. Caricare il modello in un editor e individuare Microsoft.Compute/virtualMachineScaleSetsla risorsa interessataresources all'interno della sezione. Se si dispone di un set di scalabilità di macchine virtuali con solo un'identità gestita assegnata dall'utente, è possibile disabilitarla modificando il tipo di identità e impostandolo su None.

    L'esempio seguente illustra come rimuovere tutte le identità gestite assegnate dall'utente da una macchina virtuale senza identità gestite assegnate dal sistema:

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

    Microsoft.Compute/virtualMachineScaleSets versione API 2018-06-01

    Per rimuovere una singola identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali, rimuoverla dal dizionario userAssignedIdentities.

    Se si dispone di un'identità assegnata dal sistema, mantenerla nel valore type del valore identity.

    Microsoft.Compute/virtualMachineScaleSets versione API 2017-12-01

    Per rimuovere una singola identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali, rimuoverla dalla matrice identityIds.

    Se si dispone di un'identità gestita assegnata dal sistema, mantenerla nel valore type del valore identity.

Passaggi successivi

Questo articolo illustra come eseguire le operazioni relative alle identità gestite per le risorse di Azure seguenti in un set di scalabilità di macchine virtuali di Azure usando CURL per eseguire le chiamate all'endpoint REST di Azure Resource Manager:

  • Abilitare e disabilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali di Azure
  • Aggiungere e rimuovere un'identità gestita assegnata dall'utente in un set di scalabilità di macchine virtuali di Azure

Se non si ha un account Azure, registrarsi per ottenere un account gratuito prima di continuare.

Prerequisiti

  • Se non si ha familiarità con le identità gestite per le risorse di Azure, vedere Informazioni sulle identità gestite per le risorse di Azure. Per informazioni sui tipi di identità gestite assegnate dal sistema e assegnate dall'utente, vedere Tipi di identità gestita.

  • Per eseguire le operazioni di gestione illustrate in questo articolo, l'account deve avere le assegnazioni di ruolo di Azure seguenti:

    Nota

    Non sono necessarie altre assegnazioni di ruolo della directory di Microsoft Entra.

Identità gestita assegnata dal sistema

Questa sezione illustra come attivare e disattivare le identità gestite assegnate dal sistema in set di scalabilità di macchine virtuali, usando CURL per eseguire chiamate all'endpoint REST di Azure Resource Manager.

Abilitare l'identità gestita assegnata dal sistema durante la creazione di un set di scalabilità di macchine virtuali

Per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema abilitata, è necessario creare un set di scalabilità di macchine virtuali e recuperare un token di accesso per usare CURL per chiamare l'endpoint di Resource Manager con il valore del tipo dell'identità gestita assegnata dal sistema.

  1. Creare un gruppo di risorse per il contenuto e la distribuzione del set di scalabilità di macchine virtuali e delle risorse correlate, usando az group create. Se si dispone già di un gruppo di risorse da usare, è possibile ignorare questo passaggio:

    az group create --name myResourceGroup --location westus
    
  2. Creare un'interfaccia di rete per il set di scalabilità di macchine virtuali:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  4. In Azure Cloud Shell creare un set di scalabilità di macchine virtuali usando CURL per chiamare l'endpoint REST di Azure Resource Manager. L'esempio seguente crea un set di scalabilità di macchine virtuali denominato myVMSS in myResourceGroup, con un'identità gestita assegnata dal sistema, come indicato nel corpo della richiesta dal valore "identity":{"type":"SystemAssigned"}. Sostituire <ACCESS TOKEN> con il valore ricevuto nel passaggio precedente relativo alla richiesta di un token bearer di accesso e il valore <SUBSCRIPTION ID> appropriato per l'ambiente.

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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"
           }
        }
     }  
    

Abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali esistente

Per abilitare l'identità gestita assegnata dal sistema in un set di scalabilità di macchine virtuali esistente, è necessario acquisire un token di accesso e quindi usare CURL per chiamare l'endpoint REST di Gestione risorse per aggiornare il tipo di identità.

  1. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  2. Usare il comando CURL seguente per chiamare l'endpoint REST di Azure Resource Manager per abilitare l'identità gestita assegnata dal sistema sul set di scalabilità di macchine virtuali, come indicato dal valore {"identity":{"type":"SystemAssigned"} nel corpo della richiesta per un set di scalabilità di macchine virtuali denominato myVMSS. Sostituire <ACCESS TOKEN> con il valore ricevuto nel passaggio precedente relativo alla richiesta di un token bearer di accesso e il valore <SUBSCRIPTION ID> appropriato per l'ambiente.

    Importante

    Per verificare di non eliminare alcuna identità gestita assegnata dall'utente associata al set di scalabilità di macchine virtuali, è necessario elencare le identità gestite assegnate dall'utente tramite questo 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>". Se vi sono eventuali identità gestite assegnate dall'utente associate al set di scalabilità di macchine virtuali come indicato nel valore identity della risposta, passare al passaggio 3 dove viene illustrato come mantenere le identità gestite assegnate dall'utente durante l'abilitazione dell'identità gestita assegnata dal sistema sul set di scalabilità di macchine virtuali.

     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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "identity":{
           "type":"SystemAssigned"
        }
     }
    
  3. Per abilitare l'identità gestita assegnata dal sistema su un set di scalabilità di macchine virtuali con le identità gestite assegnate dall'utente presenti, è necessario aggiungere SystemAssigned al valoretype.

    Se, ad esempio, il set di scalabilità di macchine virtuali presenta identità gestite assegnate dall'utente ID1 e ID2 assegnate al set stesso e si intende aggiungere un'identità gestita assegnata dal sistema al set di scalabilità di macchine virtuali, usare la chiamata di CURL seguente. Sostituire <ACCESS TOKEN> e <SUBSCRIPTION ID> con i valori appropriati all'ambiente.

    La versione dell'API 2018-06-01 archivia le identità gestite assegnate dall'utente nel valore userAssignedIdentities in formato dizionario anziché nel valore identityIds in formato matrice usato nella versione dell'API 2017-12-01.

    VERSIONE API 01/06/2018

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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":{
    
              }
           }
        }
     }
    

    VERSIONE API 01-12-2017

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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"
           ]
        }
     }
    

Disabilitare un'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali

Per disabilitare l'identità assegnata dal sistema in un set di scalabilità di macchine virtuali esistente, è necessario acquisire un token di accesso e quindi usare CURL per chiamare l'endpoint REST di Gestione risorse per aggiornare il tipo di identità a None.

  1. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  2. Aggiornare il set di scalabilità di macchine virtuali usando CURL per chiamare l'endpoint REST di Azure Resource Manager e disabilitare l'identità gestita assegnata dal sistema. L'esempio seguente disabilita un'identità gestita assegnata dal sistema, come indicato nel corpo della richiesta dal valore {"identity":{"type":"None"}} da un set di scalabilità di macchine virtuali denominato myVMSS. Sostituire <ACCESS TOKEN> con il valore ricevuto nel passaggio precedente relativo alla richiesta di un token bearer di accesso e il valore <SUBSCRIPTION ID> appropriato per l'ambiente.

    Importante

    Per verificare di non eliminare alcuna identità gestita assegnata dall'utente associata al set di scalabilità di macchine virtuali, è necessario elencare le identità gestite assegnate dall'utente tramite questo 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>". Se sono presenti eventuali identità gestite assegnate dall'utente associate al set di scalabilità di macchine virtuali, passare al passaggio 3 dove viene illustrato come mantenere le identità gestite assegnate dall'utente durante la rimozione dell'identità gestita assegnata dal sistema sul set di scalabilità di macchine virtuali.

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

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

    Per rimuovere l'identità gestita assegnata dal sistema da un set di scalabilità di macchine virtuali con identità gestite assegnate dall'utente, rimuovere SystemAssigned dal valore {"identity":{"type:" "}} mantenendo il valore UserAssigned e i valori di dizionario userAssignedIdentities, se si usa la versione dell'API 01/06/2018. Se invece si usa la versione dell'API 01/12/2017 o precedenti, mantenere la matrice identityIds.

Identità gestita assegnata dall'utente

Questa sezione illustra come aggiungere e rimuovere le identità gestite assegnate dall'utente in un set di scalabilità di macchine virtuali, usando CURL per effettuare chiamate all'endpoint REST di Azure Resource Manager.

Assegnare un'identità gestita assegnata dall'utente durante la creazione di un set di scalabilità di macchine virtuali

  1. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  2. Creare un'interfaccia di rete per il set di scalabilità di macchine virtuali:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  4. Creare un'identità gestita assegnata dall'utente usando le istruzioni disponibili qui: Creare un'identità gestita assegnata dall'utente.

  5. Creare un set di scalabilità di macchine virtuali usando CURL per chiamare l'endpoint REST di Azure Resource Manager. L'esempio seguente crea un set di scalabilità di macchine virtuali denominato myVMSS nel gruppo di risorse myResourceGroup, con un'identità gestita assegnata dall'utente €ID1, come indicato nel corpo della richiesta dal valore "identity":{"type":"UserAssigned"}. Sostituire <ACCESS TOKEN> con il valore ricevuto nel passaggio precedente relativo alla richiesta di un token bearer di accesso e il valore <SUBSCRIPTION ID> appropriato per l'ambiente.

    VERSIONE API 01/06/2018

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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"
           }
        }
     }
    

    VERSIONE API 01-12-2017

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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"
           }
        }
     }
    

Assegnare un'identità gestita assegnata dall'utente a un set di scalabilità di macchine virtuali di Azure esistente

  1. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  2. Creare un'identità gestita assegnata dall'utente usando le istruzioni disponibili qui: Creare un'identità gestita assegnata dall'utente.

  3. Per verificare di non eliminare le identità esistenti assegnate dall'utente o dal sistema associate al set di scalabilità di macchine virtuali, è necessario elencare i tipi di identità assegnati al set di scalabilità di macchine virtuali tramite il comando CURL seguente. Se sono state gestite identità assegnate al set di scalabilità di macchine virtuali, queste vengono elencate di seguito nel valore 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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.
  4. Se non si dispone di identità gestite assegnate dall'utente o dal sistema associate al set di scalabilità di macchine virtuali, usare il comando CURL seguente per chiamare l'endpoint REST di Azure Resource Manager e assegnare la prima identità gestita assegnata dall'utente al set di scalabilità di macchine virtuali. Se sono presenti eventuali identità gestite assegnate dall'utente o dal sistema associate al set di scalabilità di macchine virtuali, passare al passaggio 5 dove viene illustrato come aggiungere le identità gestite assegnate dall'utente a un set di scalabilità di macchine virtuali, conservando allo stesso tempo l'identità gestita assegnata dal sistema.

    L'esempio seguente assegna un'identità gestita assegnate dall'utente ID1 a un set di scalabilità di macchine virtuali denominato myVMSS nel gruppo di risorse myResourceGroup. Sostituire <ACCESS TOKEN> con il valore ricevuto nel passaggio precedente relativo alla richiesta di un token bearer di accesso e il valore <SUBSCRIPTION ID> appropriato per l'ambiente.

    VERSIONE API 01/06/2018

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

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

    VERSIONE API 01-12-2017

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "identity":{
           "type":"userAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    
  5. Se si dispone di un'identità gestita assegnata dall'utente o dal sistema associata al set di scalabilità di macchine virtuali:

    VERSIONE API 01/06/2018

    Aggiungere l'identità gestita assegnata dall'utente al valore di dizionario userAssignedIdentities.

    Se ad esempio il set di scalabilità di macchine virtuali dispone già di identità gestite assegnate dal sistema e assegnate dall'utente ID1 e si intende aggiungervi l'identità gestita assegnata dall'utente 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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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":{
    
              }
           }
        }
     }
    

    VERSIONE API 01-12-2017

    Quando si aggiunge la nuova identità gestita assegnata dall'utente, mantenere le identità gestite assegnate dall'utente desiderate nel valore di matrice identityIds.

    Se ad esempio il set di scalabilità di macchine virtuali dispone già di identità assegnate dal sistema e assegnate dall'utente ID1 e si intende aggiungervi l'identità gestita assegnata dall'utente 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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

     {
        "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"
           ]
        }
     }
    

Rimuovere un'identità gestita assegnata dall'utente da un set di scalabilità di macchine virtuali

  1. Recuperare un bearer token di accesso, necessario nel passaggio successivo nell'intestazione dell'autorizzazione per creare un set di scalabilità di macchine virtuali con un'identità gestita assegnata dal sistema.

    az account get-access-token
    
  2. Per verificare di non eliminare alcuna identità gestita assegnata dall'utente che si intende mantenere associata al set di scalabilità di macchine virtuali o di non rimuovere le identità gestite assegnate dal sistema, è necessario elencare i tipi di identità assegnati alla macchina virtuale tramite il comando CURL seguente:

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Se sono state gestite identità assegnate alla macchina virtuale, sono elencate nella risposta nel valore identity.

    Se ad esempio si dispone di identità gestite assegnate dall'utente ID1 e ID2 assegnate al set di scalabilità di macchine virtuali e si vuole solamente mantenere assegnato ID1 e mantenere l'identità gestita assegnata dal sistema:

    VERSIONE API 01/06/2018

    Aggiungere null all'identità gestita assegnata dall'utente che si intende rimuovere:

    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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

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

    VERSIONE API 01-12-2017

    Mantenere solo le identità gestite assegnate dall'utente desiderate nella matrice 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
    

    Intestazioni delle richieste

    Intestazione della richiesta Descrizione
    Content-Type Obbligatorio. Impostare su application/json.
    Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

    Testo della richiesta

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

Se il set di scalabilità di macchine virtuali ha identità gestite sia assegnate dal sistema che assegnate dall'utente, è possibile rimuovere tutte le identità gestite assegnate dall'utente iniziando a usare solo identità assegnate dal sistema, usando il comando seguente:

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

Intestazioni delle richieste

Intestazione della richiesta Descrizione
Content-Type Obbligatorio. Impostare su application/json.
Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

Testo della richiesta

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

Se il set di scalabilità di macchine virtuali presenta solo identità gestite assegnate dall'utente e si intende rimuoverle tutte, usare il comando seguente:

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

Intestazioni delle richieste

Intestazione della richiesta Descrizione
Content-Type Obbligatorio. Impostare su application/json.
Autorizzazione Obbligatorio. Impostare su un token di accesso Bearer valido.

Testo della richiesta

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

Passaggi successivi

Per informazioni su come creare, elencare o eliminare le identità gestite assegnate dall'utente usando REST, vedere: