Konfigurieren von verwalteten Identitäten für Azure-Ressourcen in einer VM-Skalierungsgruppe mit der Azure-Befehlszeilenschnittstelle

Verwaltete Identitäten für Azure-Ressourcen sind ein Feature 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 mit der Azure-Befehlszeilenschnittstelle die folgenden Vorgänge für verwaltete Identitäten für eine Azure-VM-Skalierungsgruppe ausführen:

  • 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

Wenn Sie noch kein Azure-Konto haben, sollten Sie sich für ein kostenloses Konto registrieren, bevor Sie fortfahren.

Voraussetzungen

  • Wenn Sie mit verwalteten Identitäten für Azure-Ressourcen noch nicht vertraut sind, lesen Sie Was sind verwaltete Identitäten für Azure-Ressourcen?. Informationen zu systemseitig zugewiesenen und benutzerseitig zugewiesenen Typen verwalteter Identitäten finden Sie unter Arten von verwalteten Identitäten.

  • 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.

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.

  • Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.

    • Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.

    • Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.

    • Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.

Systemseitig zugewiesene verwaltete Identität

In diesem Abschnitt erfahren Sie, wie Sie die systemseitig zugewiesene verwaltete Identität für eine Azure-VM-Skalierungsgruppe mit der Azure-Befehlszeilenschnittstelle aktivieren und deaktivieren.

Aktivieren der vom System zugewiesenen verwalteten Identität bei der Erstellung einer Azure-VM-Skalierungsgruppe

So erstellen Sie eine VM-Skalierungsgruppe samt aktivierter vom System zugewiesener verwalteter Identität

  1. Erstellen Sie eine Ressourcengruppe für das Einschließen und Bereitstellen der VM-Skalierungsgruppe und der zugehörigen Ressourcen. Verwenden Sie hierfür az group create. Sie können diesen Schritt überspringen, wenn Sie bereits über eine Ressourcengruppe verfügen, die Sie stattdessen verwenden möchten:

    az group create --name myResourceGroup --location westus
    
  2. Erstellen einer VM-Skalierungsgruppe Im folgenden Beispiel wird die VM-Skalierungsgruppe myVMSS mit einer systemseitig zugewiesenen verwalteten Identität erstellt. Dies wird durch den Parameter --assign-identity und der Angabe von --role und --scope gefordert. Der --admin-username-Parameter und der --admin-password-Parameter geben den Namen und das Kennwort des Administratorbenutzers für die Anmeldung am virtuellen Computer an. Aktualisieren Sie diese Werte ggf. mit den entsprechenden Werten für Ihre Umgebung:

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

Aktivieren einer vom System zugewiesenen verwalteten Identität in einer vorhandenen Azure-VM-Skalierungsgruppe

Wenn Sie die systemseitig zugewiesene verwaltete Identität in einer vorhandenen Azure-VM-Skalierungsgruppe aktivieren müssen, gehen Sie wie folgt vor:

az vmss identity assign -g myResourceGroup -n myVMSS

Deaktivieren der vom System zugewiesenen verwalteten Identität in einer Azure-VM-Skalierungsgruppe

Wenn Sie über eine VM-Skalierungsgruppe verfügen, die nicht mehr die vom System zugewiesene verwaltete Identität, jedoch weiterhin vom Benutzer zugewiesene verwaltete Identitäten benötigt, verwenden Sie den folgenden Befehl:

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

Bei einem virtuellen Computer, der nicht mehr die vom System zugewiesene verwaltete Identität benötigt und über keine vom Benutzer zugewiesenen verwalteten Identitäten verfügt, verwenden Sie den folgenden Befehl:

Hinweis

Für den Wert none müssen Sie die Groß-/Kleinschreibung beachten. Er darf nur aus Kleinbuchstaben bestehen.

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

Benutzerseitig zugewiesene verwaltete Identität

In diesem Abschnitt erfahren Sie, wie Sie mithilfe der Azure-Befehlszeilenschnittstelle eine vom Benutzer zugewiesene verwaltete Identität aktivieren und entfernen.

Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität bei der Erstellung einer VM-Skalierungsgruppe

Dieser Abschnitt führt Sie durch das Erstellen einer VM-Skalierungsgruppe und das Zuweisen einer benutzerseitig zugewiesenen verwalteten Identität zu der VM-Skalierungsgruppe. Wenn Sie eine bereits vorhandene VM-Skalierungsgruppe verwenden möchten, überspringen Sie diesen Abschnitt, und fahren Sie mit dem nächsten Abschnitt fort.

  1. Sie können diesen Schritt überspringen, wenn Sie bereits über eine Ressourcengruppe verfügen, die Sie verwenden möchten. Erstellen Sie mit az group create eine Ressourcengruppe zum Einschließen und Bereitstellen Ihrer vom Benutzer zugewiesenen verwalteten Identität. Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <LOCATION> durch Ihre eigenen Werte. decodiert werden:

    az group create --name <RESOURCE GROUP> --location <LOCATION>
    
  2. Erstellen Sie mit az identity create eine benutzerseitig zugewiesene verwaltete Identität. Der Parameter -g gibt die Ressourcengruppe an, in der die vom Benutzer zugewiesene verwaltete Identität erstellt wird, und der Parameter -n gibt den Namen an. Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <USER ASSIGNED IDENTITY NAME> durch Ihre eigenen Werte:

    Wichtig

    Wenn Sie benutzerseitig zugewiesene verwaltete Identitäten erstellen, muss der Name mit einem Buchstaben oder einer Zahl beginnen und darf eine Kombination aus alphanumerischen Zeichen, Bindestrichen (-) und Unterstrichen (_) enthalten. Damit die Zuweisung zu einem virtuellen Computer oder einer VM-Skalierungsgruppe ordnungsgemäß funktioniert, darf der Name höchstens 24 Zeichen lang sein. Weitere Informationen finden Sie unter FAQs und bekannte Probleme mit der verwalteten Dienstidentität (Managed Service Identity, MSI) für Azure Active Directory.

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

    Die Antwort enthält Details zu der erstellten vom Benutzer zugewiesenen verwalteten Identität, ähnlich dem folgenden Beispiel. Der Wert id der Ressource, der der vom Benutzer zugewiesenen verwalteten Identität zugewiesen ist, wird im nächsten Schritt verwendet.

    {
         "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY NAME>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY NAME>",
         "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  3. Erstellen einer VM-Skalierungsgruppe Im folgenden Beispiel wird eine VM-Skalierungsgruppe erstellt, der die neue benutzerseitig zugewiesene verwaltete Identität zugewiesen ist. Dies wird durch den Parameter --assign-identity und durch --role und --scope angegeben. Ersetzen Sie die Parameterwerte <RESOURCE GROUP>, <VMSS NAME>, <USER NAME>, <PASSWORD>, <USER ASSIGNED IDENTITY>, <ROLE> und <SUBSCRIPTION> durch Ihre eigenen Werte.

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

Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität zu einer vorhandenen VM-Skalierungsgruppe

  1. Erstellen Sie mit az identity create eine benutzerseitig zugewiesene verwaltete Identität. Der Parameter -g gibt die Ressourcengruppe an, in der die vom Benutzer zugewiesene verwaltete Identität erstellt wird, und der Parameter -n gibt den Namen an. Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <USER ASSIGNED IDENTITY NAME> durch Ihre eigenen Werte:

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

    Die Antwort enthält Details zu der erstellten vom Benutzer zugewiesenen verwalteten Identität, ähnlich dem folgenden Beispiel.

    {
         "clientId": "73444643-8088-4d70-9532-c3a0fdc190fz",
         "clientSecretUrl": "https://control-westcentralus.identity.azure.net/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY >/credentials?tid=5678&oid=9012&aid=73444643-8088-4d70-9532-c3a0fdc190fz",
         "id": "/subscriptions/<SUBSCRIPTON ID>/resourcegroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER ASSIGNED IDENTITY>",
         "location": "westcentralus",
         "name": "<USER ASSIGNED IDENTITY>",
         "principalId": "e5fdfdc1-ed84-4d48-8551-fe9fb9dedfll",
         "resourceGroup": "<RESOURCE GROUP>",
         "tags": {},
         "tenantId": "733a8f0e-ec41-4e69-8ad8-971fc4b533bl",
         "type": "Microsoft.ManagedIdentity/userAssignedIdentities"    
    }
    
  2. Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität zu einer VM-Skalierungsgruppe Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <VIRTUAL MACHINE SCALE SET NAME> durch Ihre eigenen Werte. <USER ASSIGNED IDENTITY> ist die im vorherigen Schritt erstellte name-Eigenschaft der Ressource der vom Benutzer zugewiesenen Identität:

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

Entfernen einer vom Benutzer zugewiesenen verwalteten Identität aus einer Azure-VM-Skalierungsgruppe

Zum Entfernen einer vom Benutzer zugewiesenen verwalteten Identität aus einer VM-Skalierungsgruppe wird az vmss identity remove verwendet. Wenn dies die einzige vom Benutzer zugewiesene verwaltete Identität der VM-Skalierungsgruppe ist, wird UserAssigned aus dem Wert des Identitätstyps entfernt. Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <VIRTUAL MACHINE SCALE SET NAME> durch Ihre eigenen Werte. <USER ASSIGNED IDENTITY> ist die name-Eigenschaft der vom Benutzer zugewiesenen verwalteten Identität. Diese Eigenschaft kann mit az vmss identity show aus dem Identitätsabschnitt der VM-Skalierungsgruppe abgerufen werden:

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

Wenn Ihre VM-Skalierungsgruppe keine vom System zugewiesene verwaltete Identität hat und Sie alle vom Benutzer zugewiesenen verwalteten Identitäten entfernen möchten, verwenden Sie den folgenden Befehl:

Hinweis

Für den Wert none müssen Sie die Groß-/Kleinschreibung beachten. Er darf nur aus Kleinbuchstaben bestehen.

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

Wenn die VM-Skalierungsgruppe sowohl vom System als auch vom Benutzer zugewiesene verwaltete Identitäten aufweist, können Sie alle vom Benutzer zugewiesenen Identitäten entfernen, indem Sie in den Modus wechseln, in dem nur die vom System zugewiesene verwaltete Identität verwendet wird. Verwenden Sie den folgenden Befehl:

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

Nächste Schritte