Beheerde identiteiten voor Azure-resources op een Azure VM configureren met behulp van sjablonen
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.
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
- Raadpleeg de overzichtssectie als u niet bekend bent met het gebruiken van Azure Resource Manager-implementatiesjabloon. Let op dat u nagaat wat het verschil is tussen een door het systeem toegewezen en door de gebruiker toegewezen beheerde identiteit.
- Als u nog geen Azure-account hebt, registreer u dan voor een gratis account voordat u verdergaat.
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:
- Door een aangepaste sjabloon van de Azure Marketplace te gebruiken, waarmee u een volledig nieuwe sjabloon kunt maken, of door het te baseren op een bestaande algemene sjabloon of een quickstart-sjabloon.
- Door af te leiden van een bestaande resourcegroep, door een sjabloon te exporteren vanaf ofwel de oorspronkelijke implementatie ofwel van de huidige status van de implementatie.
- Door een lokale JSON-editor (zoals VS Code) te gebruiken en deze vervolgens te uploaden en implementeren met behulp van PowerShell of CLI.
- Door het Azure Resource Group-project van Visual Studio te gebruiken om een sjabloon te maken en te implementeren.
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.
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.
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 sectieresources
en voegt u de eigenschap"identity"
op hetzelfde niveau toe als de eigenschap"type": "Microsoft.Compute/virtualMachines"
. Gebruik de volgende syntaxis:"identity": { "type": "SystemAssigned" },
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.
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.
Laad de sjabloon in een editor en zoek de gewenste
Microsoft.Compute/virtualMachines
-resource op in de sectieresources
. Als u een VM hebt die alleen een door het systeem toegewezen beheerde identiteit heeft, kunt u deze uitschakelen door het identiteitstype te wijzigen inNone
.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 uUserAssigned
samen met de woordenlijstwaardenuserAssignedIdentities
.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 uSystemAssigned
uit het identiteitstype en behoudt uUserAssigned
samen met de matrixidentityIds
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.
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 woordenlijstindelinguserAssignedIdentities
en moet de waarde<USERASSIGNEDIDENTITYNAME>
worden opgeslagen in een variabele die is gedefinieerd in de sectievariables
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 matrixidentityIds
en moet de waarde<USERASSIGNEDIDENTITYNAME>
worden opgeslagen in een variabele die is gedefinieerd in de sectievariables
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>'))]" ] } }
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.
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.
Laad de sjabloon in een editor en zoek de gewenste
Microsoft.Compute/virtualMachines
-resource op in de sectieresources
. Als u een VM hebt die alleen een door de gebruiker toegewezen beheerde identiteit heeft, kunt u deze uitschakelen door het identiteitstype te wijzigen inNone
.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 waardeidentity
.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 waardeidentity
.