Delen via


Beheerde identiteiten configureren op virtuele Azure-machines (VM's)

Beheerde identiteiten voor Azure-resources is een functie van Microsoft Entra ID. Voor alle Azure-services die beheerde identiteiten voor Azure-resources ondersteunen, geldt een eigen tijdlijn. Controleer de beschikbaarheidsstatus van beheerde identiteiten voor uw resource en eventuele bekende problemen voordat u begint.

Beheerde identiteiten voor Azure-resources bieden Azure-services met een automatisch beheerde identiteit in Microsoft Entra ID. U kunt deze identiteit gebruiken voor verificatie bij alle services die Microsoft Entra-verificatie ondersteunen, zonder dat u aanmeldingsgegevens in uw code hoeft te hebben.

Zie Azure Policy gebruiken om beheerde identiteiten (preview) toe te wijzen voor meer informatie over de definitie en details van Azure Policy.

In dit artikel leert u hoe u door het systeem en door de gebruiker toegewezen beheerde identiteiten voor een virtuele Azure-machine (VM) kunt in- en uitschakelen met behulp van Azure Portal.

Vereisten

Door het systeem toegewezen beheerde identiteit

In deze sectie leert u hoe u de door het systeem toegewezen beheerde identiteit voor VM in- en uitschakelt met behulp van Azure Portal.

Door het systeem toegewezen beheerde identiteit inschakelen tijdens het maken van een VM

Als u de door het systeem toegewezen beheerde identiteit op een VM tijdens het maken wilt inschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  • Ga naar het tabblad Beheer in het gedeelte Identiteit en schakel Beheerde service-identiteit in op Aan.

Schermopname die laat zien hoe u door het systeem toegewezen identiteit inschakelt tijdens het maken van de VIRTUELE machine.

Raadpleeg de volgende quickstarts om een VM te maken:

Door het systeem toegewezen beheerde identiteit inschakelen op een bestaande VM

Tip

Stappen in dit artikel kunnen enigszins variëren op basis van de portal waaruit u begint.

Als u een door het systeem toegewezen beheerde identiteit wilt inschakelen op een VM die oorspronkelijk zonder deze identiteit werd ingericht, heeft uw account de roltoewijzing Inzender van de virtuele machine nodig. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Meld u aan bij Azure Portal met een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat.

  2. Navigeer naar de gewenste VM en selecteer Identiteit.

  3. Selecteer onder Door systeem toegewezen, Status de optie Aan en klik op Opslaan:

    Schermafbeelding met de pagina 'Identiteit (voorbeeld)' met de status 'Systeem toegewezen' ingesteld op 'Aan'.

Door het systeem toegewezen beheerde identiteit uit een VM verwijderen

Als u de door het systeem toegewezen beheerde identiteit uit een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

Als u een virtuele machine hebt waarvoor geen door het systeem toegewezen beheerde identiteit meer nodig is, doet u het volgende:

  1. Meld u aan bij Azure Portal met een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat.

  2. Navigeer naar de gewenste VM en selecteer Identiteit.

  3. Selecteer onder Door systeem toegewezen, Status de optie Uit en klik op Opslaan:

    Schermopname van de configuratiepagina.

Door de gebruiker toegewezen beheerde identiteit

In deze sectie leert u hoe u een door een gebruiker toegewezen beheerde identiteit kunt toevoegen aan/verwijderen van een virtuele machine met behulp van Azure Portal.

Door de gebruiker toegewezen identiteit inschakelen tijdens het maken van een VM

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

Op dit moment ondersteunt Azure Portal niet het toewijzen van een door de gebruiker toegewezen beheerde identiteit tijdens het maken van een virtuele machine. Raadpleeg in plaats daarvan een van de volgende artikelen in de quickstart over het maken van een VM om eerst een virtuele machine te maken. Ga vervolgens verder met de volgende sectie voor meer informatie over het eraan toewijzen van een door een gebruiker toegewezen beheerde identiteit aan de VM:

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een bestaande VM

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Meld u aan bij Azure Portal met een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat.

  2. Ga naar de gewenste VM en klik op Identiteit, Door de gebruiker toegewezen en vervolgens op +Toevoegen.

    Schermopname van de pagina Identiteit met Door de gebruiker toegewezen en de knop Toevoegen gemarkeerd.

  3. Klik op de door de gebruiker toegewezen identiteit die u wilt toevoegen aan de VM en klik op Toevoegen.

    Schermopname van het toevoegen van een door de gebruiker toegewezen beheerde identiteit aan de VIRTUELE machine.

De door de gebruiker toegewezen beheerde identiteit verwijderen van een VM

Als u de door de gebruiker toegewezen identiteit uit een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machine. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Meld u aan bij Azure Portal met een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat.

  2. Navigeer naar de gewenste VM en selecteer Identiteit, Door de gebruiker toegewezen, de naam van de door de gebruiker toegewezen beheerde identiteit die u wilt verwijderen en klik vervolgens op Verwijderen (klik op Ja in het bevestigingsvenster).

    Schermopname van het verwijderen van een door de gebruiker toegewezen beheerde identiteit van een VIRTUELE machine

Volgende stappen

In dit artikel leert u om met behulp van Azure CLI de volgende beheerde identiteiten uit te voeren voor bewerkingen van Azure-resources op een virtuele Azure-machine:

  • De door een systeem toegewezen beheerde identiteit op een Azure VM in- en uitschakelen
  • De door een gebruiker toegewezen beheerde identiteit op een Azure VM toevoegen en verwijderen

Als u nog geen Azure-account hebt, registreer u dan voor een gratis account voordat u verdergaat.

Vereisten

Door het systeem toegewezen beheerde identiteit

In deze sectie leert u hoe u de door het systeem toegewezen beheerde identiteit op een Azure VM in- en uitschakelt met behulp van Azure CLI.

Door het systeem toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure-VM

Als u een Azure-VM wilt maken met de door het systeem toegewezen beheerde identiteit, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Maak met az group create een resourcegroep voor insluiting en implementatie van uw VM en de bijbehorende bronnen. U kunt deze stap overslaan als u al een resourcegroep hebt die u in plaats daarvan wilt gebruiken:

    az group create --name myResourceGroup --location westus
    
  2. Maak een VM met az vm create. In het volgende voorbeeld wordt een VM met de naam myVM gemaakt met een door het systeem toegewezen beheerde identiteit, zoals is aangevraagd door de parameter --assign-identity, met de opgegeven --role en --scope. Met de parameters --admin-username en --admin-password worden de naam van de gebruiker met beheerdersrechten en het wachtwoord van het account voor aanmelding bij de virtuele machine opgegeven. Werk deze waarden bij met waarden die geschikt zijn voor uw omgeving:

    az vm create --resource-group myResourceGroup --name myVM --image win2016datacenter --generate-ssh-keys --assign-identity --role contributor --scope mySubscription --admin-username azureuser --admin-password myPassword12
    

Door het systeem toegewezen beheerde identiteit inschakelen op een bestaande virtuele Azure-machine

Als u de door het systeem toegewezen beheerde identiteit op een VM wilt inschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Als u de Azure CLI in een lokale console gebruikt, meldt u zich eerst aan bij Azure met az login. Gebruik een account die is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat.

    az login
    
  2. Gebruik az vm identity assign met de opdracht identity assign om de door het systeem toegewezen identiteit in te schakelen voor een bestaande virtuele machine:

    az vm identity assign -g myResourceGroup -n myVm
    

Door het systeem toegewezen identiteit van een Azure VM uitschakelen

Als u de door het systeem toegewezen beheerde identiteit op een VM wilt uitschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

Gebruik de volgende opdracht als u een virtuele machine hebt die geen door het systeem toegewezen identiteit meer nodig heeft, maar die nog steeds door de gebruiker toegewezen identiteiten nodig heeft:

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

Gebruik de volgende opdracht als u een virtuele machine hebt die geen door het systeem toegewezen identiteit meer nodig heeft en geen door de gebruiker toegewezen identiteiten heeft:

Notitie

De waarde none is hoofdlettergevoelig. Deze moet uit kleine letters bestaan.

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

Door de gebruiker toegewezen beheerde identiteit

In deze sectie leert u hoe u een door een gebruiker toegewezen beheerde identiteit kunt toevoegen aan/verwijderen van een virtuele Azure-machine met behulp van Azure CLI. Als u uw door de gebruiker toegewezen beheerde identiteit maakt in een andere RG dan uw virtuele machine. U moet de URL van uw beheerde identiteit gebruiken om deze aan uw virtuele machine toe te wijzen. Voorbeeld:

--identities "/subscriptions/<SUBID>/resourcegroups/<RESROURCEGROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER_ASSIGNED_ID_NAME>"

Door de gebruiker toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure VM

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM tijdens het maken ervan, moet uw account beschikken over de roltoewijzingen Inzender voor virtuele machines en Operator beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. U kunt deze stap overslaan als u al een resourcegroep hebt die u wilt gebruiken. Maak met az group create een resourcegroep voor insluiting en implementatie van uw door de gebruiker beheerde identiteit. Vervang de parameterwaarden <RESOURCE GROUP> en <LOCATION> door uw eigen waarden. :

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Maak een door de gebruiker toegewezen beheerde identiteit met az identity create. De parameter -g geeft de resourcegroep aan waarin de door de gebruiker toegewezen beheerde identiteit wordt gemaakt en de parameter -n geeft de naam ervan aan.

    Belangrijk

    Wanneer u door de gebruiker toegewezen beheerde identiteiten maakt, moet de naam beginnen met een letter of cijfer en kan een combinatie van alfanumerieke tekens, afbreekstreepjes (-) en onderstrepingstekens (_) bevatten. De toewijzing aan een virtuele machine of virtuele-machineschaalset verloopt goed als de naam wordt beperkt tot 24 tekens. Zie Veelgestelde vragen en bekende problemen voor meer informatie.

    az identity create -g myResourceGroup -n myUserAssignedIdentity
    

    Het antwoord bevat details voor de door de gebruiker toegewezen beheerde identiteit die is gemaakt, vergelijkbaar met de volgende. De waarde van de resource-id die is toegewezen aan de door de gebruiker toegewezen beheerde identiteit, wordt in de volgende stap gebruikt.

    {
        "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444",
        "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<myUserAssignedIdentity>/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 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. Maak een VM met az vm create. In het volgende voorbeeld wordt een VM gemaakt die is gekoppeld aan de nieuwe door de gebruiker toegewezen identiteit, zoals aangegeven door de parameter --assign-identity, met de opgegeven --role en --scope. Vervang de parameterwaarden <RESOURCE GROUP>, <VM NAME>, <USER NAME>, <PASSWORD>, <USER ASSIGNED IDENTITY NAME>, <ROLE> en <SUBSCRIPTION> door uw eigen waarden.

    az vm create --resource-group <RESOURCE GROUP> --name <VM NAME> --image <SKU linux image>  --admin-username <USER NAME> --admin-password <PASSWORD> --assign-identity <USER ASSIGNED IDENTITY NAME> --role <ROLE> --scope <SUBSCRIPTION> 
    

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een bestaande VM van Azure

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Maak een door de gebruiker toegewezen identiteit met az identity create. De parameter -g geeft de resourcegroep aan waarin de door de gebruiker toegewezen identiteit wordt gemaakt en de parameter -n geeft de naam ervan aan. Vervang de parameterwaarden <RESOURCE GROUP> en <USER ASSIGNED IDENTITY NAME> door uw eigen waarden:

    Belangrijk

    Het maken van door de gebruiker toegewezen beheerde identiteiten met speciale tekens (dat wil gezegd, onderstrepingsteken) in de naam wordt momenteel niet ondersteund. Gebruik hiervoor alfanumerieke tekens. Controleer later op updates. Zie Veelgestelde vragen en bekende problemen voor meer informatie

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

    Het antwoord bevat details voor de door de gebruiker toegewezen beheerde identiteit die is gemaakt, vergelijkbaar met de volgende.

    {
      "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=aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
      "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"    
    }
    
  2. Wijs de door de gebruiker toegewezen identiteit toe aan de VM met az vm identity assign. Vervang de parameterwaarden <RESOURCE GROUP> en <VM NAME> door uw eigen waarden. De <USER ASSIGNED IDENTITY NAME> is de resource-eigenschap name van de door de gebruiker toegewezen beheerde identiteit, zoals deze in de vorige stap is gemaakt. Als u uw door de gebruiker toegewezen beheerde identiteit maakt in een andere RG dan uw virtuele machine. U moet de URL van uw beheerde identiteit gebruiken.

    az vm identity assign -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>
    

De door de gebruiker toegewezen beheerde identiteit van een Azure VM verwijderen

Als u de door de gebruiker toegewezen identiteit van een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machine.

Als dit de enige door de gebruiker toegewezen beheerde identiteit is die is toegewezen aan de virtuele machine, wordt UserAssigned verwijderd uit de waarde voor het identiteitstype. Vervang de parameterwaarden <RESOURCE GROUP> en <VM NAME> door uw eigen waarden. De <USER ASSIGNED IDENTITY> wordt de eigenschap name van de door de gebruiker toegewezen identiteit, die u kunt vinden in de sectie identiteit van de virtuele machine met behulp van az vm identity show:

az vm identity remove -g <RESOURCE GROUP> -n <VM NAME> --identities <USER ASSIGNED IDENTITY>

Gebruik de volgende opdracht als uw virtuele machine geen door het systeem toegewezen beheerde identiteit heeft en u alle door de gebruiker toegewezen identiteiten wilt verwijderen:

Notitie

De waarde none is hoofdlettergevoelig. Deze moet uit kleine letters bestaan.

az vm update -n myVM -g myResourceGroup --set identity.type="none" identity.userAssignedIdentities=null

Als uw virtuele machine zowel door het systeem toegewezen als door de gebruiker toegewezen identiteiten bevat, kunt u alle door de gebruiker toegewezen identiteiten verwijderen door over te schakelen naar het gebruik van alleen door het systeem toegewezen identiteiten. Gebruik de volgende opdracht:

az vm update -n myVM -g myResourceGroup --set identity.type='SystemAssigned' identity.userAssignedIdentities=null 

Volgende stappen

In dit artikel leert u om met behulp van PowerShell de volgende beheerde identiteiten uit te voeren voor bewerkingen van Azure-resources op een virtuele Azure-machine.

Notitie

Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Vereisten

Door het systeem toegewezen beheerde identiteit

In deze sectie gaan we verder met het in- en uitschakelen van de door het systeem toegewezen beheerde identiteit met behulp van Azure PowerShell.

Door het systeem toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure-VM

Als u een Azure-VM wilt maken met de door het systeem toegewezen beheerde identiteit, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Raadpleeg een van de volgende snelstartgidsen voor virtuele Azure-machines en doorloop alleen de benodigde secties ('Aanmelden bij Azure', 'Resourcegroep maken', 'Netwerkgroep maken', 'De virtuele machine maken').

    Maak in de sectie 'De virtuele machine maken' een kleine wijziging in de syntaxis van de New-AzVMConfig-cmdlet. Zorg ervoor dat u een -IdentityType SystemAssigned-parameter toevoegt om de virtuele machine in te richten met de door het systeem toegewezen identiteit, bijvoorbeeld:

    $vmConfig = New-AzVMConfig -VMName myVM -IdentityType SystemAssigned ...
    

Door het systeem toegewezen beheerde identiteit inschakelen op een bestaande virtuele Azure-machine

Als u een door het systeem toegewezen beheerde identiteit wilt inschakelen op een VM die oorspronkelijk zonder deze identiteit werd ingericht, heeft uw account de roltoewijzing Inzender van de virtuele machine nodig. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Haal de VM-eigenschappen op met behulp van de cmdlet Get-AzVM. Gebruik vervolgens de schakeloptie -IdentityType in de Update-AzVM-cmdlet om een door het systeem toegewezen beheerde identiteit in te schakelen:

    $vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
    Update-AzVM -ResourceGroupName myResourceGroup -VM $vm -IdentityType SystemAssigned
    

Een door het VM-systeem toegewezen identiteit toewijzen aan een groep

Nadat u een door het systeem toegewezen identiteit op een virtuele machine hebt ingeschakeld, kunt u deze toevoegen aan een groep. Met de volgende procedure voegt u de door het VM-systeem toegewezen identiteit toe aan een groep.

  1. Haal de ObjectID (zoals opgegeven in het veld Id van de geretourneerde waarden) van de service-principal van de VM op en noteer deze:

    Get-AzADServicePrincipal -displayname "myVM"
    
  2. Haal de ObjectID (zoals opgegeven in het veld Id van de geretourneerde waarden) van de groep op en noteer deze:

    Get-AzADGroup -searchstring "myGroup"
    
  3. De service-principal van de virtuele machine toevoegen aan de groep:

    New-MgGroupMember -GroupId "<Id of group>" -DirectoryObjectId "<Id of VM service principal>" 
    

Door het systeem toegewezen beheerde identiteit van een Azure-VM uitschakelen

Als u de door het systeem toegewezen beheerde identiteit op een VM wilt uitschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

Gebruik de volgende cmdlet als u een virtuele machine hebt die de door het systeem toegewezen beheerde identiteit niet meer nodig heeft, maar de door de gebruiker toegewezen beheerde identiteiten nog steeds nodig hebt:

  1. Haal de VM-eigenschappen op met behulp van de cmdlet Get-AzVM en stel de -IdentityType-parameter in op UserAssigned:

    $vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
    Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType "UserAssigned" -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>..."
    

Gebruik de volgende opdrachten als u een virtuele machine hebt die de door het systeem toegewezen beheerde identiteit niet meer nodig heeft en er geen door de gebruiker toegewezen beheerde identiteiten zijn:

$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None

Door de gebruiker toegewezen beheerde identiteit

In deze sectie leert u hoe u een door een gebruiker toegewezen beheerde identiteit kunt toevoegen aan/verwijderen van een virtuele machine met behulp van Azure PowerShell.

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een virtuele machine tijdens het maken ervan

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Raadpleeg een van de volgende snelstartgidsen voor virtuele Azure-machines en doorloop alleen de benodigde secties ('Aanmelden bij Azure', 'Resourcegroep maken', 'Netwerkgroep maken', 'De virtuele machine maken').

    Maak in de sectie 'De virtuele machine maken' een kleine wijziging in de syntaxis van de New-AzVMConfig-cmdlet. Voeg de parameters -IdentityType UserAssigned en -IdentityID toe om de virtuele machine in te richten met een door de gebruiker toegewezen identiteit. Vervang <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP> en <USER ASSIGNED IDENTITY NAME> door uw eigen waarden. Voorbeeld:

    $vmConfig = New-AzVMConfig -VMName <VM NAME> -IdentityType UserAssigned -IdentityID "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>..."
    

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een bestaande VM van Azure

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Maak een door de gebruiker toegewezen beheerde identiteit met de cmdlet New-AzUserAssignedIdentity. Noteer de Id in de uitvoer omdat u deze informatie nodig hebt in de volgende stap.

    Belangrijk

    Het maken van door de gebruiker toegewezen beheerde identiteiten ondersteunt alleen alfanumerieke, onderstrepingstekens en afbreekstreepjes (0-9 of a-z of A-Z, _ of -) tekens. Voor een correcte toewijzing aan VM/VMSS mag de naam bovendien uit 3 tot 128 tekens bestaan. Zie Veelgestelde vragen en bekende problemen voor meer informatie

    New-AzUserAssignedIdentity -ResourceGroupName <RESOURCEGROUP> -Name <USER ASSIGNED IDENTITY NAME>
    
  2. Haal de VM-eigenschappen op met behulp van de cmdlet Get-AzVM. Wijs vervolgens een door de gebruiker toegewezen beheerde identiteit toe aan de virtuele Azure-machine, gebruik u de schakeloptie -IdentityType en -IdentityID in de cmdlet Update-AzVM. De waarde voor de parameter -IdentityId is de Id die u in de vorige stap hebt genoteerd. Vervang <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP> en <USER ASSIGNED IDENTITY NAME> door uw eigen waarden.

    Waarschuwing

    Als u eerder door de gebruiker toegewezen beheerde identiteiten die aan de virtuele machine zijn toegewezen wilt behouden, moet u een query uitvoeren op de eigenschap Identity van het VM-object (bijvoorbeeld $vm.Identity). Als door de gebruiker toegewezen beheerde identiteiten worden geretourneerd, neemt u deze op in de volgende opdracht, samen met de nieuwe door de gebruiker toegewezen beheerde identiteit die u aan de virtuele machine wilt toewijzen.

    $vm = Get-AzVM -ResourceGroupName <RESOURCE GROUP> -Name <VM NAME>
    
    # Get the list of existing identity IDs and then append to it
    $identityIds = $vm.Identity.UserAssignedIdentities.Keys
    $uid = "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/<RESROURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>"
    $identityIds = $identityIds + $uid 
    
    # Update the VM with added identity IDs
    Update-AzVM -ResourceGroupName <RESOURCE GROUP> -VM $vm -IdentityType UserAssigned -IdentityID $uid 
    

De door de gebruiker toegewezen beheerde identiteit van een Azure VM verwijderen

Als u de door de gebruiker toegewezen identiteit van een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machine.

Als uw VM meerdere door de gebruiker toegewezen beheerde identiteiten heeft, kunt u alle, behalve de laatste, verwijderen met de volgende opdrachten. Vervang de parameterwaarden <RESOURCE GROUP> en <VM NAME> door uw eigen waarden. De <USER ASSIGNED IDENTITY NAME> is de naameigenschap van de door de gebruiker toegewezen beheerde identiteit; deze moet op de virtuele machine blijven. Deze informatie kan worden gedetecteerd met behulp van een query om te zoeken naar de Identity eigenschap van het VM-object. Bijvoorbeeld $vm.Identity:

$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType UserAssigned -IdentityID <USER ASSIGNED IDENTITY NAME>

Als uw VM geen door het systeem toegewezen beheerde identiteit heeft en u alle door de gebruiker toegewezen beheerde identiteiten wilt verwijderen, gebruikt u de volgende opdracht:

$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VM $vm -IdentityType None

Als uw virtuele machine zowel door het systeem toegewezen als door de gebruiker toegewezen beheerde identiteiten bevat, kunt u alle door de gebruiker toegewezen beheerde identiteiten verwijderen door te schakelen naar het gebruik van alleen door het systeem toegewezen beheerde identiteit.

$vm = Get-AzVm -ResourceGroupName myResourceGroup -Name myVm
Update-AzVm -ResourceGroupName myResourceGroup -VirtualMachine $vm -IdentityType "SystemAssigned"

Volgende stappen

In dit artikel leert u, met behulp van de Azure Resource Manager-implementatiesjabloon, om de volgende beheerde identiteiten uit te voeren voor bewerkingen van Azure-resources op een Azure VM:

Vereisten

Azure Resource Manager-sjablonen

Net als bij Azure Portal en scripts kunt u met Azure Resource Manager-sjablonen nieuwe of gewijzigde resources implementeren die zijn gedefinieerd door een Azure-resourcegroep. Er zijn verschillende opties beschikbaar voor het bewerken en implementeren van sjablonen, zowel lokaal als op basis van een portal, waaronder:

Welke optie u ook kiest, de sjabloonsyntaxis is dezelfde tijdens de eerste implementatie en herimplementatie. Het inschakelen van een door een systeem of gebruiker toegewezen beheerde identiteit op een nieuwe of bestaande virtuele machine gebeurt op dezelfde manier. Azure Resource Manager voert ook standaard een incrementele update uit naar implementaties.

Door het systeem toegewezen beheerde identiteit

In deze sectie gaat u een door het systeem toegewezen beheerde identiteit in- en uitschakelen met behulp van een Azure Resource Manager-sjabloon.

Door het systeem toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure VM of een bestaande VM

Als u de door het systeem toegewezen beheerde identiteit op een VM wilt inschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Gebruik een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat, of u zich nu lokaal aanmeldt of via Azure Portal.

  2. Als u de door het systeem toegewezen beheerde identiteit wilt inschakelen, laadt u de sjabloon in een editor, zoekt u de gewenste Microsoft.Compute/virtualMachines-resource op in de sectie resources en voegt u de eigenschap "identity" op hetzelfde niveau toe als de eigenschap "type": "Microsoft.Compute/virtualMachines". Gebruik de volgende syntaxis:

    "identity": {
        "type": "SystemAssigned"
    },
    
  3. Wanneer u klaar bent, zijn de volgende secties toegevoegd aan de sectie resource van uw sjabloon en ziet deze er als volgt uit:

     "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "SystemAssigned",
                 }                        
         }
     ]
    

Een rol toewijzen aan de door het systeem toegewezen beheerde identiteit van de VM

Nadat u een door het systeem toegewezen beheerde identiteit hebt ingeschakeld op uw virtuele machine, kunt u deze een rol verlenen, zoals Lezer , tot de resourcegroep waarin deze is gemaakt. U vindt gedetailleerde informatie voor hulp bij deze stap in het artikel Azure Resource Manager-sjablonen toewijzen.

Een door het systeem toegewezen beheerde identiteit van een Azure VM uitschakelen

Als u de door het systeem toegewezen beheerde identiteit uit een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Gebruik een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat, of u zich nu lokaal aanmeldt of via Azure Portal.

  2. Laad de sjabloon in een editor en zoek de gewenste Microsoft.Compute/virtualMachines-resource op in de sectie resources. Als u een VM hebt die alleen een door het systeem toegewezen beheerde identiteit heeft, kunt u deze uitschakelen door het identiteitstype te wijzigen in None.

    Microsoft.Compute/virtualMachines API versie 01-06-2018

    Als uw virtuele machine zowel door het systeem als door de gebruiker toegewezen beheerde identiteiten heeft, verwijdert u SystemAssigned uit het identiteitstype en behoudt u UserAssigned samen met de woordenlijstwaarden userAssignedIdentities.

    Microsoft.Compute/virtualMachines API versie 01-06-2018

    Als uw apiVersion 2017-12-01 is en uw virtuele machine heeft zowel door het systeem als door de gebruiker toegewezen beheerde identiteiten, verwijdert u SystemAssigned uit het identiteitstype en behoudt u UserAssigned samen met de matrix identityIds van door de gebruiker toegewezen beheerde identiteiten.

In het volgende voorbeeld ziet u hoe u een door het systeem toegewezen beheerde identiteit verwijdert uit een VM zonder door de gebruiker toegewezen beheerde identiteiten:

{
    "apiVersion": "2018-06-01",
    "type": "Microsoft.Compute/virtualMachines",
    "name": "[parameters('vmName')]",
    "location": "[resourceGroup().location]",
    "identity": {
        "type": "None"
    }
}

Door de gebruiker toegewezen beheerde identiteit

In deze sectie wijst u een door het systeem toegewezen beheerde identiteit toe aan een Azure VM met behulp van Azure Resource Manager-sjabloon.

Notitie

Zie Een door de gebruiker toegewezen beheerde identiteit maken als u een door de gebruiker toegewezen beheerde identiteit wilt maken met behulp van een Azure Resource Manager-sjabloon.

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een Azure VM

Als u een door de gebruiker toegewezen identiteit wilt toewijzen aan een virtuele machine, heeft uw account de roltoewijzing Managed Identity Operator nodig. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Voeg onder het element resources de volgende vermelding toe om een door de gebruiker toegewezen beheerde identiteit aan uw virtuele machine toe te wijzen. Vervang <USERASSIGNEDIDENTITY> door de naam van de door de gebruiker toegewezen beheerde identiteit die u hebt gemaakt.

    Microsoft.Compute/virtualMachines API versie 01-06-2018

    Als uw apiVersion 2018-06-01 is, worden uw door de gebruiker toegewezen beheerde identiteiten opgeslagen in de woordenlijstindeling userAssignedIdentities en moet de waarde <USERASSIGNEDIDENTITYNAME> worden opgeslagen in een variabele die is gedefinieerd in de sectie variables van uw sjabloon.

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

    Microsoft.Compute/virtualMachines API versie 01-12-2017

    Als uw apiVersion 2017-12-01 is, worden uw door de gebruiker toegewezen beheerde identiteiten opgeslagen in de matrix identityIds en moet de waarde <USERASSIGNEDIDENTITYNAME> worden opgeslagen in een variabele die is gedefinieerd in de sectie variables van uw sjabloon.

    {
        "apiVersion": "2017-12-01",
        "type": "Microsoft.Compute/virtualMachines",
        "name": "[variables('vmName')]",
        "location": "[resourceGroup().location]",
        "identity": {
            "type": "userAssigned",
            "identityIds": [
                "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
            ]
        }
    }
    
  2. Wanneer u klaar bent, zijn de volgende secties toegevoegd aan de sectie resource van uw sjabloon en ziet deze er als volgt uit:

    Microsoft.Compute/virtualMachines API versie 01-06-2018

      "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2018-06-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "userAssigned",
                 "userAssignedIdentities": {
                    "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {}
                 }
             }
         }
     ] 
    

    Microsoft.Compute/virtualMachines API versie 01-12-2017

    "resources": [
         {
             //other resource provider properties...
             "apiVersion": "2017-12-01",
             "type": "Microsoft.Compute/virtualMachines",
             "name": "[variables('vmName')]",
             "location": "[resourceGroup().location]",
             "identity": {
                 "type": "userAssigned",
                 "identityIds": [
                    "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]"
                 ]
             }
         }
    ]
    

De door de gebruiker toegewezen beheerde identiteit van een Azure VM verwijderen

Als u de door de gebruiker toegewezen identiteit uit een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machine. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Gebruik een account dat is gekoppeld aan het Azure-abonnement dat de virtuele machine bevat, of u zich nu lokaal aanmeldt of via Azure Portal.

  2. Laad de sjabloon in een editor en zoek de gewenste Microsoft.Compute/virtualMachines-resource op in de sectie resources. Als u een VM hebt die alleen een door de gebruiker toegewezen beheerde identiteit heeft, kunt u deze uitschakelen door het identiteitstype te wijzigen in None.

    In het volgende voorbeeld ziet u hoe u alle door de gebruiker beheerde identiteiten verwijdert uit een VM zonder door het systeem toegewezen beheerde identiteiten:

     {
       "apiVersion": "2018-06-01",
       "type": "Microsoft.Compute/virtualMachines",
       "name": "[parameters('vmName')]",
       "location": "[resourceGroup().location]",
       "identity": {
           "type": "None"
           },
     }
    

    Microsoft.Compute/virtualMachines API versie 01-06-2018

    Als u één door de gebruiker toegewezen beheerde identiteit uit een virtuele machine wilt verwijderen, verwijdert u deze uit de woordenlijst useraAssignedIdentities.

    Als u een door het systeem toegewezen beheerde identiteit hebt, bewaart u deze in de waarde type onder de waarde identity.

    Microsoft.Compute/virtualMachines API versie 01-12-2017

    Als u één door de gebruiker toegewezen beheerde identiteit uit een virtuele machine wilt verwijderen, verwijdert u deze uit de matrix identityIds.

    Als u een door het systeem toegewezen beheerde identiteit hebt, bewaart u deze in de waarde type onder de waarde identity.

Volgende stappen

In dit artikel leert u om met behulp van CURL het Azure Resource Manager REST-eindpunt aan te roepen en daarmee de volgende beheerde identiteiten uit te voeren voor bewerkingen van Azure-resources op een Azure VM:

  • De door een systeem toegewezen beheerde identiteit op een Azure VM in- en uitschakelen
  • De door een gebruiker toegewezen beheerde identiteit op een Azure VM toevoegen en verwijderen

Als u nog geen Azure-account hebt, registreer u dan voor een gratis account voordat u verdergaat.

Vereisten

Door het systeem toegewezen beheerde identiteit

In deze sectie leert u hoe u een door het systeem toegewezen beheerde identiteit op een Azure VM kunt inschakelen en uitschakelen waarbij u CURL gebruikt om het Azure Resource Manager REST-eindpunt aan te roepen.

Door het systeem toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure-VM

Als u een Azure-VM wilt maken met de door het systeem toegewezen beheerde identiteit, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Maak met az group create een resourcegroep voor insluiting en implementatie van uw VM en de bijbehorende bronnen. U kunt deze stap overslaan als u al een resourcegroep hebt die u in plaats daarvan wilt gebruiken:

    az group create --name myResourceGroup --location westus
    
  2. Een netwerkinterface voor uw VM maken:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  4. Maak in Azure Cloud Shell een VM door met behulp van CURL het Azure Resource Manager REST-eindpunt aan te roepen. In het volgende voorbeeld wordt een VM gemaakt met de naam myVM met een door een systeem toegewezen beheerde identiteit, zoals aangegeven in de aanvraagbody met de waarde "identity":{"type":"SystemAssigned"}. Vervang <ACCESS TOKEN> door de waarde die u in de vorige stap hebt ontvangen toen u een Bearer-toegangstoken en de <SUBSCRIPTION ID>-waarde hebt aangevraagd die van toepassing zijn voor uw omgeving.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"SystemAssigned"},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"<SECURE PASSWORD STRING>"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

      {
        "location":"westus",
        "name":"myVM",
        "identity":{
           "type":"SystemAssigned"
        },
        "properties":{
           "hardwareProfile":{
              "vmSize":"Standard_D2_v2"
           },
           "storageProfile":{
              "imageReference":{
                 "sku":"2016-Datacenter",
                 "publisher":"MicrosoftWindowsServer",
                 "version":"latest",
                 "offer":"WindowsServer"
              },
              "osDisk":{
                 "caching":"ReadWrite",
                 "managedDisk":{
                    "storageAccountType":"StandardSSD_LRS"
                 },
                 "name":"myVM3osdisk",
                 "createOption":"FromImage"
              },
              "dataDisks":[
                 {
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":0
                 },
                 {
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":1
                 }
              ]
           },
           "osProfile":{
              "adminUsername":"azureuser",
              "computerName":"myVM",
              "adminPassword":"myPassword12"
           },
           "networkProfile":{
              "networkInterfaces":[
                 {
                    "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic",
                    "properties":{
                       "primary":true
                    }
                 }
              ]
           }
        }
     }  
    

Door het systeem toegewezen beheerde identiteit inschakelen op een bestaande Azure VM

Als u een door het systeem toegewezen beheerde identiteit wilt inschakelen op een VM die oorspronkelijk zonder deze identiteit werd ingericht, heeft uw account de roltoewijzing Inzender van de virtuele machine nodig. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  2. Gebruik de volgende CURL-opdracht om het Azure Resource Manager REST-eindpunt aan te roepen, zodat u de door het systeem toegewezen beheerde identiteit kunt inschakelen op uw VM, zoals aangegeven in de aanvraagbody door de waarde {"identity":{"type":"SystemAssigned"} voor een VM met de naam myVM. Vervang <ACCESS TOKEN> door de waarde die u in de vorige stap hebt ontvangen toen u een Bearer-toegangstoken en de <SUBSCRIPTION ID>-waarde hebt aangevraagd die van toepassing zijn voor uw omgeving.

    Belangrijk

    U moet de door de gebruiker toegewezen beheerde identiteiten weergeven met behulp van de volgende CURL-opdracht, zodat u geen bestaande door de gebruiker aan de VM toegewezen beheerde identiteiten verwijdert: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Als u door de gebruiker toegewezen beheerde identiteiten hebt die zijn toegewezen aan de VM, zoals aangegeven in de identity-waarde in het antwoord, gaat u verder met stap 3 waarin wordt getoond hoe u door de gebruiker toegewezen beheerde identiteiten kunt behouden terwijl de door het systeem toegewezen beheerde identiteit wordt ingeschakeld op uw VM.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

     {  
        "identity":{  
           "type":"SystemAssigned"
        }
     }
    
  3. Als u een door het systeem toegewezen beheerde identiteit wilt inschakelen op een VM met bestaande door de gebruiker toegewezen beheerde identiteiten, moet u SystemAssigned toevoegen aan de type-waarde.

    Als aan uw VM bijvoorbeeld de door de gebruiker toegewezen beheerde identiteiten ID1 en ID2 zijn toegewezen, en u een door het systeem toegewezen beheerde identiteit wilt toevoegen aan de VM, gebruikt u de volgende CURL-aanroep. Vervang <ACCESS TOKEN> en <SUBSCRIPTION ID> door de waarden die van toepassing zijn op uw omgeving.

    In API-versie 2018-06-01 worden door de gebruiker toegewezen beheerde identiteiten opgeslagen in de userAssignedIdentities-waarde in een woordenlijstindeling, dit in tegenstelling tot de identityIds-waarde in een matrixindeling die wordt gebruikt in API-versie 2017-12-01.

    API VERSION 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

    API VERSION 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

Door het systeem toegewezen beheerde identiteit van een Azure-VM uitschakelen

Als u de door het systeem toegewezen beheerde identiteit op een VM wilt uitschakelen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machines. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  2. Werk de VM waarbij u met CURL het Azure Resource Manager REST-eindpunt aanroept om de door het systeem toegewezen beheerde identiteit uit te schakelen. In het volgende voorbeeld wordt de door het systeem toegewezen beheerde identiteit uitgeschakeld zoals die in de aanvraagbody wordt geïdentificeerd door de waarde {"identity":{"type":"None"}} van een VM met de naam myVM. Vervang <ACCESS TOKEN> door de waarde die u in de vorige stap hebt ontvangen toen u een Bearer-toegangstoken en de <SUBSCRIPTION ID>-waarde hebt aangevraagd die van toepassing zijn voor uw omgeving.

    Belangrijk

    U moet de door de gebruiker toegewezen beheerde identiteiten weergeven met behulp van de volgende CURL-opdracht, zodat u geen bestaande door de gebruiker aan de VM toegewezen beheerde identiteiten verwijdert: curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM NAME>?api-version=2018-06-01' -H "Authorization: Bearer <ACCESS TOKEN>". Als u door de gebruiker toegewezen beheerde identiteiten hebt die zijn toegewezen aan de VM, zoals aangegeven in de identity-waarde in het antwoord, gaat u verder met stap 3 waarin wordt getoond hoe u door de gebruiker toegewezen beheerde identiteiten kunt behouden terwijl de door het systeem toegewezen beheerde identiteit wordt uitgeschakeld op uw VM.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

    Als u een door het systeem toegewezen beheerde identiteit wilt verwijderen uit een virtuele machine met door de gebruiker toegewezen beheerde identiteiten, verwijdert u SystemAssigned uit de {"identity":{"type:" "}}-waarde en behoudt u de UserAssigned-waarde en de userAssignedIdentities-woordenlijstwaarden als u API-versie 2018-06-01 gebruikt. Als u API-versie 2017-12-01 of eerder gebruikt, moet u de identityIds-matrix blijven gebruiken.

Door de gebruiker toegewezen beheerde identiteit

In deze sectie leert u hoe u een door de gebruiker toegewezen beheerde identiteit kunt toevoegen aan/verwijderen uit een Azure VM door met behulp van CURL het Azure Resource Manager REST-eindpunt aan te roepen.

Door de gebruiker toegewezen beheerde identiteit inschakelen tijdens het maken van een Azure VM

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  2. Een netwerkinterface voor uw VM maken:

     az network nic create -g myResourceGroup --vnet-name myVnet --subnet mySubnet -n myNic
    
  3. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  4. Maak een door de gebruiker toegewezen beheerde identiteit met behulp van de instructies die hier worden gevonden: Een door de gebruiker toegewezen beheerde identiteit maken.

  5. Maak een VM met behulp van CURL om het Azure Resource Manager REST-eindpunt aan te roepen. In het volgende voorbeeld wordt een VM gemaakt met de naam myVM in de resourcegroep myResourceGroup met een door de gebruiker toegewezen beheerde identiteit ID1, zoals aangegeven in de aanvraagbody met de waarde "identity":{"type":"UserAssigned"}. Vervang <ACCESS TOKEN> door de waarde die u in de vorige stap hebt ontvangen toen u een Bearer-toegangstoken en de <SUBSCRIPTION ID>-waarde hebt aangevraagd die van toepassing zijn voor uw omgeving.

    API VERSION 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

     {  
        "location":"westus",
        "name":"myVM",
        "identity":{  
           "type":"UserAssigned",
           "identityIds":[  
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        },
        "properties":{  
           "hardwareProfile":{  
              "vmSize":"Standard_D2_v2"
           },
           "storageProfile":{  
              "imageReference":{  
                 "sku":"2016-Datacenter",
                 "publisher":"MicrosoftWindowsServer",
                 "version":"latest",
                 "offer":"WindowsServer"
              },
              "osDisk":{  
                 "caching":"ReadWrite",
                 "managedDisk":{  
                    "storageAccountType":"StandardSSD_LRS"
                 },
                 "name":"myVM3osdisk",
                 "createOption":"FromImage"
              },
              "dataDisks":[  
                 {  
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":0
                 },
                 {  
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":1
                 }
              ]
           },
           "osProfile":{  
              "adminUsername":"azureuser",
              "computerName":"myVM",
              "adminPassword":"myPassword12"
           },
           "networkProfile":{  
              "networkInterfaces":[  
                 {  
                    "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic",
                    "properties":{  
                       "primary":true
                    }
                 }
              ]
           }
        }
     }
    
    

    API VERSION 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01' -X PUT -d '{"location":"westus","name":"myVM","identity":{"type":"UserAssigned","identityIds":["/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"]},"properties":{"hardwareProfile":{"vmSize":"Standard_D2_v2"},"storageProfile":{"imageReference":{"sku":"2016-Datacenter","publisher":"MicrosoftWindowsServer","version":"latest","offer":"WindowsServer"},"osDisk":{"caching":"ReadWrite","managedDisk":{"storageAccountType":"StandardSSD_LRS"},"name":"myVM3osdisk","createOption":"FromImage"},"dataDisks":[{"diskSizeGB":1023,"createOption":"Empty","lun":0},{"diskSizeGB":1023,"createOption":"Empty","lun":1}]},"osProfile":{"adminUsername":"azureuser","computerName":"myVM","adminPassword":"myPassword12"},"networkProfile":{"networkInterfaces":[{"id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic","properties":{"primary":true}}]}}}' -H "Content-Type: application/json" -H "Authorization: Bearer <ACCESS TOKEN>"
    
    PUT https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

     {
        "location":"westus",
        "name":"myVM",
        "identity":{
           "type":"UserAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        },
        "properties":{
           "hardwareProfile":{
              "vmSize":"Standard_D2_v2"
           },
           "storageProfile":{
              "imageReference":{
                 "sku":"2016-Datacenter",
                 "publisher":"MicrosoftWindowsServer",
                 "version":"latest",
                 "offer":"WindowsServer"
              },
              "osDisk":{
                 "caching":"ReadWrite",
                 "managedDisk":{
                    "storageAccountType":"StandardSSD_LRS"
                 },
                 "name":"myVM3osdisk",
                 "createOption":"FromImage"
              },
              "dataDisks":[
                 {
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":0
                 },
                 {
                    "diskSizeGB":1023,
                    "createOption":"Empty",
                    "lun":1
                 }
              ]
           },
           "osProfile":{
              "adminUsername":"azureuser",
              "computerName":"myVM",
              "adminPassword":"myPassword12"
           },
           "networkProfile":{
              "networkInterfaces":[
                 {
                    "id":"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/myNic",
                    "properties":{
                       "primary":true
                    }
                 }
              ]
           }
        }
     }
    

Een door de gebruiker toegewezen beheerde identiteit toewijzen aan een bestaande VM van Azure

Als u een door een gebruiker toegewezen identiteit wilt toewijzen aan een VM, moet uw account beschikken over de roltoewijzingen Inzender van de virtuele machine en Operator van de beheerde identiteit. Er zijn geen andere roltoewijzingen voor Microsoft Entra-mappen vereist.

  1. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  2. Maak een door de gebruiker toegewezen beheerde identiteit met behulp van de hier vermelde instructies: Een door de gebruiker toegewezen beheerde identiteit maken.

  3. U moet de identiteitstypen weergeven die aan de VM zijn toegewezen met behulp van de volgende CURL-opdracht, zodat u geen bestaande door de gebruiker of het systeem aan de VM toegewezen identiteiten verwijdert. Als u beheerde identiteiten hebt die zijn toegewezen aan de virtuele-machineschaalset, worden deze weergegeven onderin de identity-waarde.

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM 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/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Als u door de gebruiker of het systeem toegewezen beheerde identiteiten hebt die zijn toegewezen aan de VM, zoals aangegeven in de identity-waarde in het antwoord, gaat u verder met stap 5 waarin wordt getoond hoe u door het systeem toegewezen beheerde identiteiten kunt behouden terwijl een door de gebruiker toegewezen beheerde identiteit op uw VM wordt toegevoegd.

  4. Als u geen door de gebruiker of het systeem toegewezen beheerde identiteiten hebt die aan de VM zijn toegewezen, gebruikt u de volgende CURL-opdracht om het Azure Resource Manager REST-eindpunt aan te roepen voor het toewijzen van de eerste door de gebruiker toegewezen beheerde identiteit aan de VM.

    In het volgende voorbeeld wordt een door de gebruiker toegewezen beheerde identiteit ID1 toegewezen aan een VM met de naam myVM in de resourcegroep myResourceGroup. Vervang <ACCESS TOKEN> door de waarde die u in de vorige stap hebt ontvangen toen u een Bearer-toegangstoken en de <SUBSCRIPTION ID>-waarde hebt aangevraagd die van toepassing zijn voor uw omgeving.

    API VERSION 2018-06-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?api-version=2018-06-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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

    API VERSION 2017-12-01

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

     {
        "identity":{
           "type":"userAssigned",
           "identityIds":[
              "/subscriptions/<SUBSCRIPTION ID>/resourcegroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ID1"
           ]
        }
     }
    
  5. Als u een bestaande door de gebruiker of door het systeem toegewezen beheerde identiteit hebt die is toegewezen aan uw VM:

    API VERSION 2018-06-01

    Voeg de door de gebruiker toegewezen beheerde identiteit toe aan de woordenlijstwaarde userAssignedIdentities.

    Als u bijvoorbeeld een door het systeem toegewezen beheerde identiteit en de momenteel door de gebruiker aan uw VM toegewezen beheerde identiteit ID1 hebt en u de door de gebruiker toegewezen beheerde identiteit ID2 wilt toevoegen:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

    API VERSION 2017-12-01

    Bewaar de door de gebruiker toegewezen beheerde identiteiten die u in de matrixwaarde identityIds wilt houden waarbij u de nieuwe door de gebruiker toegewezen beheerde identiteit toevoegt.

    Als u bijvoorbeeld een door het systeem toegewezen beheerde identiteit en de momenteel door de gebruiker aan uw VM toegewezen beheerde identiteit ID1 hebt en u de door de gebruiker toegewezen beheerde identiteit ID2 wilt toevoegen:

    curl  'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

De door de gebruiker toegewezen beheerde identiteit van een Azure VM verwijderen

Als u de door de gebruiker toegewezen identiteit van een VM wilt verwijderen, moet uw account beschikken over de roltoewijzing Inzender voor virtuele machine.

  1. Haal een Bearer-toegangstoken op om in de volgende stap in de autorisatie-header te gebruiken voor het maken van uw VM met een door een systeem toegewezen beheerde identiteit.

    az account get-access-token
    
  2. U moet de beheerde identiteiten weergeven met behulp van de volgende CURL-opdracht, zodat u geen bestaande door de gebruiker toegewezen beheerde identiteiten verwijdert die aan de VM toegewezen moeten blijven of de aan het systeem toegewezen beheerde identiteit verwijdert:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.Compute/virtualMachines/<VM 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/virtualMachines/<VM NAME>?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Als u beheerde identiteiten hebt die aan de virtuele machine zijn toegewezen, worden deze in het antwoord in de identity-waarde weergegeven.

    Als bijvoorbeeld de door de gebruiker toegewezen beheerde identiteiten ID1 en ID2 zijn toegewezen aan uw VM en u wilt dat alleen ID1 toegewezen blijft en dat de door het systeem toegewezen identiteit behouden blijft:

    API VERSION 2018-06-01

    Voeg null toe aan de door de gebruiker toegewezen beheerde identiteit die u wilt verwijderen:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

    API VERSION 2017-12-01

    Bewaar alleen de door de gebruiker toegewezen beheerde identiteit(en) die u in de identityIds-matrix wilt behouden:

    curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2017-12-01 HTTP/1.1
    

    Aanvraagheaders

    Aanvraagheader Beschrijving
    Content-Type Vereist. Ingesteld op application/json.
    Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

    Aanvraagbody

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

Als uw VM zowel door het systeem toegewezen als door de gebruiker toegewezen beheerde identiteiten bevat, kunt u alle door de gebruiker toegewezen beheerde identiteiten verwijderen door te schakelen naar het gebruik van alleen door het systeem toegewezen beheerde identiteit met de volgende opdracht:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1

Aanvraagheaders

Aanvraagheader Beschrijving
Content-Type Vereist. Ingesteld op application/json.
Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

Aanvraagbody

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

Als uw VM alleen door de gebruiker toegewezen beheerde identiteiten bevat en u deze allemaal wilt verwijderen, gebruikt u de volgende opdracht:

curl 'https://management.azure.com/subscriptions/<SUBSCRIPTION ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM?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/virtualMachines/myVM?api-version=2018-06-01 HTTP/1.1

Aanvraagheaders

Aanvraagheader Beschrijving
Content-Type Vereist. Ingesteld op application/json.
Autorisatie Vereist. Ingesteld op een geldig Bearer-toegangstoken.

Aanvraagbody

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

Volgende stappen

Zie voor informatie over het maken, weergeven of verwijderen van door de gebruiker toegewezen beheerde identiteiten met behulp van REST:

In dit artikel vindt u informatie over het inschakelen en verwijderen van beheerde identiteiten voor Azure-resources voor een virtuele Azure-machine met behulp van een Azure SDK.

Vereisten

Azure SDK's met beheerde identiteiten voor Azure-resourcesondersteuning

Azure ondersteunt meerdere programmeerplatforms via een reeks Azure SDK's. Verschillende SDK's zijn bijgewerkt om beheerde identiteiten voor Azure-resources te ondersteunen en beschikken over bijbehorende voorbeelden om het gebruik te demonstreren. Deze lijst wordt bijgewerkt wanneer er andere ondersteuning wordt toegevoegd:

SDK Voorbeeld
.NET Resource beheren vanaf een VM ingeschakeld met beheerde identiteiten voor Azure-resources ingeschakeld
Java Opslag beheren vanaf een VM ingeschakeld met beheerde identiteiten voor Azure-resources
Node.js Een VM maken met door het systeem toegewezen identiteit ingeschakeld
Python Een VM maken met door het systeem toegewezen identiteit ingeschakeld
Ruby Een Azure-VM maken waarvoor een door het systeem toegewezen identiteit is ingeschakeld

Volgende stappen

  • Zie verwante artikelen onder Identiteit configureren voor een virtuele Azure-machine voor meer informatie over hoe u ook Azure Portal, PowerShell, CLI en resourcesjablonen kunt gebruiken.