Konfigurieren von verwalteten Identitäten für Azure-Ressourcen in einer Azure VM-Skalierungsgruppe mithilfe einer Vorlage
Verwaltete Identitäten für Azure-Ressourcen ist eine Funktion von Microsoft Entra ID. Für alle Azure-Dienste, die verwaltete Identitäten unterstützen, gilt ein eigener Zeitplan. Sehen Sie sich den Verfügbarkeitsstatus der verwalteten Identitäten für Ihre Ressource und die bekannten Probleme an, bevor Sie beginnen.
Verwaltete Identitäten für Azure-Ressourcen stellen für Azure-Dienste eine automatisch verwaltete Identität in Microsoft Entra ID bereit. Sie können diese Identität für die Authentifizierung bei jedem Dienst verwenden, der die Microsoft Entra-Authentifizierung unterstützt. Hierfür müssen keine Anmeldeinformationen im Code enthalten sein.
In diesem Artikel erfahren Sie, wie Sie mithilfe der Azure Resource Manager-Bereitstellungsvorlage die folgenden Vorgänge für verwaltete Identitäten für Azure-Ressourcen ausführen können:
- Aktivieren und Deaktivieren der systemzugewiesenen verwalteten Identität in einer Azure VM-Skalierungsgruppe
- Hinzufügen und Entfernen einer benutzerzugewiesenen verwalteten Identität in einer Azure VM-Skalierungsgruppe
Voraussetzungen
Wenn Sie nicht mit verwalteten Identitäten für Azure-Ressourcen vertraut sind, helfen Ihnen die Informationen in der Übersicht weiter. Machen Sie sich den Unterschied zwischen einer vom System und einer vom Benutzer zugewiesenen verwalteten Identität bewusst.
Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.
Um die Verwaltungsvorgänge in diesem Artikel auszuführen, benötigt Ihr Konto die folgenden Zuweisungen der rollenbasierten Azure-Zugriffssteuerung:
Hinweis
Es sind keine weiteren Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.
- Mitwirkender für virtuelle Computer, um eine VM-Skalierungsgruppe zu erstellen und die vom System und/oder Benutzer zugewiesene verwaltete Identität in einer VM-Skalierungsgruppe zu aktivieren bzw. daraus zu entfernen
- Mitwirkender für verwaltete Identität, um eine vom Benutzer zugewiesene verwaltete Identität zu erstellen
- Operator für verwaltete Identität, um eine vom Benutzer zugewiesene verwaltete Identität einer VM-Skalierungsgruppe zuzuweisen bzw. daraus zu entfernen
Azure-Ressourcen-Manager-Vorlagen
Wie beim Azure-Portal und der Skripterstellung bieten Azure Resource Manager-Vorlagen die Möglichkeit, von einer Azure-Ressourcengruppe definierte neue bzw. geänderte Ressourcen bereitzustellen. Für die Vorlagenbearbeitung und -bereitstellung sind mehrere Optionen sowohl lokal als auch portalbasiert verfügbar, einschließlich:
- Verwenden einer benutzerdefinierten Vorlage aus Azure Marketplace. Dies ermöglicht Ihnen, eine ganz neue Vorlage zu erstellen oder eine Vorlage zu verwenden, die auf einer vorhandenen, häufig genutzten Vorlage oder einer Schnellstartvorlage basiert.
- Ableiten von einer vorhandenen Ressourcengruppe, indem eine Vorlage aus der ursprünglichen Bereitstellung oder aus dem aktuellen Status der Bereitstellung exportiert wird.
- Verwenden eines lokalen JSON-Editors (z.B. VS Code) und anschließendes Hochladen und Bereitstellen mithilfe von PowerShell oder CLI.
- Verwenden des Azure-Ressourcengruppenprojekts von Visual Studio für das Erstellen und Bereitstellen einer Vorlage.
Unabhängig von der gewählten Option ist die Vorlagensyntax während der ursprünglichen und erneuten Bereitstellung identisch. Die Aktivierung verwalteter Identitäten für Azure-Ressourcen auf einem neuen oder vorhandenen virtuellen Computer erfolgt auf dieselbe Weise. Standardmäßig führt Azure Resource Manager außerdem ein inkrementelles Update für Bereitstellungen durch.
Systemseitig zugewiesene verwaltete Identität
In diesem Abschnitt aktivieren und deaktivieren Sie die systemzugewiesene verwaltete Identität mithilfe einer Azure Resource Manager-Vorlage.
Aktivieren der systemseitig zugewiesenen verwalteten Identität bei der Erstellung einer VM-Skalierungsgruppe oder in einer vorhandenen VM-Skalierungsgruppe
Verwenden Sie unabhängig davon, ob Sie sich bei Azure lokal oder über das Azure-Portal anmelden, ein Konto, das dem Azure-Abonnement zugeordnet ist, das die VM-Skalierungsgruppe enthält.
Um die vom System zugewiesene verwaltete Identität zu aktivieren, laden Sie die Vorlage in einem Editor, suchen Sie die gewünschte Ressource
Microsoft.Compute/virtualMachinesScaleSets
im Ressourcenabschnitt, und fügen Sie dieidentity
-Eigenschaft auf der gleichen Ebene wie die"type": "Microsoft.Compute/virtualMachinesScaleSets"
-Eigenschaft hinzu. Verwenden Sie die folgende Syntax:"identity": { "type": "SystemAssigned" }
Wenn Sie fertig sind, sollten die folgenden Abschnitte dem Ressourcenabschnitt der Vorlage hinzugefügt worden sein und wie das folgende Beispiel aussehen:
"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... } } } ]
Deaktivieren einer vom System zugewiesenen verwalteten Identität in einer Azure VM-Skalierungsgruppe
Wenn für die VM-Skalierungsgruppe keine vom System zugewiesene verwaltete Identität mehr benötigt wird, gehen Sie wie folgt vor:
Verwenden Sie unabhängig davon, ob Sie sich bei Azure lokal oder über das Azure-Portal anmelden, ein Konto, das dem Azure-Abonnement zugeordnet ist, das die VM-Skalierungsgruppe enthält.
Laden Sie die Vorlage in einen Editor, und suchen Sie nach der gewünschten
Microsoft.Compute/virtualMachineScaleSets
-Ressource im Abschnittresources
. Wenn Ihre VM nur über eine vom System zugewiesene verwaltete Identität verfügt, können Sie diese deaktivieren, indem Sie den Identitätstyp inNone
ändern.Microsoft.Compute/virtualMachineScaleSets-API, Version 2018-06-01
Wenn
2018-06-01
als apiVersion verwendet wird und Ihr virtueller Computer sowohl vom System als auch vom Benutzer zugewiesene verwaltete Identitäten enthält, entfernen SieSystemAssigned
aus dem Identitätstyp und behaltenUserAssigned
zusammen mit den userAssignedIdentities-Wörterbuchwerten bei.Microsoft.Compute/virtualMachineScaleSets-API, Version 2018-06-01
Wenn
2017-12-01
als apiVersion verwendet wird und Ihre VM-Skalierungsgruppe sowohl vom System als auch vom Benutzer zugewiesene verwaltete Identitäten enthält, entfernen SieSystemAssigned
aus dem Identitätstyp und behaltenUserAssigned
zusammen mit demidentityIds
-Array der benutzerzugewiesenen verwalteten Identitäten bei.Das folgende Beispiel zeigt, wie Sie eine vom System zugewiesene verwaltete Identität aus einer VM-Skalierungsgruppe ohne vom Benutzer zugewiesene verwaltete Identitäten entfernen:
{ "name": "[variables('vmssName')]", "apiVersion": "2018-06-01", "location": "[parameters(Location')]", "identity": { "type": "None" } }
Benutzerseitig zugewiesene verwaltete Identität
In diesem Abschnitt weisen Sie einer VM-Skalierungsgruppe mithilfe der Azure Resource Manager-Vorlage eine benutzerzugewiesene verwaltete Identität zu.
Hinweis
Weitere Informationen zum Erstellen einer vom Benutzer zugewiesenen verwalteten Identität mit einer Azure Resource Manager-Vorlage finden Sie unter Erstellen einer vom Benutzer zugewiesenen verwalteten Identität.
Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität zu einer VM-Skalierungsgruppe
Fügen Sie unter dem
resources
-Element den folgenden Eintrag hinzu, um Ihrer VM-Skalierungsgruppe eine benutzerzugewiesene verwaltete Identität zuzuweisen. Achten Sie darauf, dass Sie<USERASSIGNEDIDENTITY>
durch den Namen der vom Benutzer zugewiesenen verwalteten Identität ersetzen, die Sie erstellt haben.Microsoft.Compute/virtualMachineScaleSets-API, Version 2018-06-01
Wenn
2018-06-01
als apiVersion verwendet wird, werden die vom Benutzer zugewiesenen verwalteten Identitäten imuserAssignedIdentities
-Wörterbuchformat gespeichert, und der Wert<USERASSIGNEDIDENTITYNAME>
muss in einer im Abschnittvariables
der Vorlage definierten Variable gespeichert werden.{ "name": "[variables('vmssName')]", "apiVersion": "2018-06-01", "location": "[parameters(Location')]", "identity": { "type": "userAssigned", "userAssignedIdentities": { "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITYNAME>'))]": {} } } }
Microsoft.Compute/virtualMachineScaleSets-API, Version 2017-12-01
Wenn
2017-12-01
oder früher alsapiVersion
verwendet wird, werden die vom Benutzer zugewiesenen verwalteten Identitäten imidentityIds
-Array gespeichert, und der Wert<USERASSIGNEDIDENTITYNAME>
muss in einer im Variablenabschnitt der Vorlage definierten Variable gespeichert werden.{ "name": "[variables('vmssName')]", "apiVersion": "2017-03-30", "location": "[parameters(Location')]", "identity": { "type": "userAssigned", "identityIds": [ "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',variables('<USERASSIGNEDIDENTITY>'))]" ] } }
Wenn Sie fertig sind, sollte Ihre Vorlage wie folgt aussehen:
Microsoft.Compute/virtualMachineScaleSets-API, Version 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-API, Version 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... } } } ]
Entfernen einer vom Benutzer zugewiesenen verwalteten Identität aus einer Azure VM-Skalierungsgruppe
Wenn für die VM-Skalierungsgruppe eine benutzerzugewiesene verwaltete Identität nicht mehr benötigt wird, gehen Sie wie folgt vor:
Verwenden Sie unabhängig davon, ob Sie sich bei Azure lokal oder über das Azure-Portal anmelden, ein Konto, das dem Azure-Abonnement zugeordnet ist, das die VM-Skalierungsgruppe enthält.
Laden Sie die Vorlage in einen Editor, und suchen Sie nach der gewünschten
Microsoft.Compute/virtualMachineScaleSets
-Ressource im Abschnittresources
. Wenn Ihre VM-Skalierungsgruppe nur über eine vom Benutzer zugewiesene verwaltete Identität verfügt, können Sie diese deaktivieren, indem Sie den Identitätstyp inNone
ändern.Das folgende Beispiel zeigt, wie Sie alle vom Benutzer zugewiesenen verwalteten Identitäten von einem virtuellen Computer ohne vom System zugewiesene verwaltete Identitäten entfernen:
{ "name": "[variables('vmssName')]", "apiVersion": "2018-06-01", "location": "[parameters(Location')]", "identity": { "type": "None" } }
Microsoft.Compute/virtualMachineScaleSets-API, Version 2018-06-01
Um eine einzelne verwaltete Identität, die von einem Benutzer zugewiesen wurde, aus einer VM-Skalierungsgruppe zu entfernen, müssen Sie sie aus dem
userAssignedIdentities
-Wörterbuch entfernen.Wenn Sie eine vom System zugewiesene Identität verwenden, behalten Sie den Wert
type
unter dem Wertidentity
bei.Microsoft.Compute/virtualMachineScaleSets-API, Version 2017-12-01
Um eine einzelne benutzerzugewiesene verwaltete Identität aus einer VM-Skalierungsgruppe zu entfernen, entfernen Sie sie aus dem
identityIds
-Array.Wenn Sie eine vom System zugewiesene verwaltete Identität verwenden, behalten Sie den Wert
type
unter dem Wertidentity
bei.