Konfigurieren von verwalteten Identitäten für Azure-Ressourcen auf einem virtuellen Azure-Computer mithilfe von PowerShell

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 von PowerShell die folgenden Vorgänge für verwaltete Identitäten für Azure-Ressourcen auf einer Azure-VM ausführen.

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren des Azure Az PowerShell-Moduls. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Voraussetzungen

Systemseitig zugewiesene verwaltete Identität

In diesem Abschnitt wird erläutert, wie Sie die systemseitig zugewiesene verwaltete Identität über Azure PowerShell aktivieren und deaktivieren.

Aktivieren einer vom System zugewiesenen verwalteten Identität beim Erstellen eines virtuellen Azure-Computers

Zum Erstellen eines virtuellen Azure-Computers, auf dem die systemseitig zugewiesene verwaltete Identität aktiviert ist, benötigt Ihr Konto die Rollenzuweisung Mitwirkender für virtuelle Computer. Es sind keine anderen Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.

  1. Verwenden Sie einen der folgenden Schnellstarts für virtuelle Azure-Computer, und setzen Sie nur die erforderlichen Abschnitte um („Anmelden bei Azure“, „Erstellen einer Ressourcengruppe“, „Erstellen einer Netzwerkgruppe“, „Erstellen des virtuellen Computers“).

    Im Abschnitt „Erstellen der VM“ nehmen Sie eine kleine Änderung an der Syntax des Cmdlets New-AzVMConfig vor. Fügen Sie einen -IdentityType SystemAssigned-Parameter hinzu, um den virtuellen Computer mit aktivierter systemzugewiesener Identität bereitzustellen. Beispiel:

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

Aktivieren einer vom System zugewiesenen verwalteten Identität auf einem vorhandenen virtuellen Azure-Computer

Zum Aktivieren der systemseitig zugewiesenen verwalteten Identität auf einem virtuellen Computer, der ursprünglich ohne diese bereitgestellt wurde, benötigt Ihr Konto die Rollenzuweisung Mitwirkender für virtuelle Computer. Es sind keine anderen Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.

  1. Rufen Sie zunächst die VM-Eigenschaften mithilfe des Cmdlets Get-AzVM ab. Verwenden Sie dann zum Aktivieren einer vom System zugewiesenen verwalteten Identität den Schalter -IdentityType im Cmdlet Update-AzVM:

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

Hinzufügen einer systemseitig zugewiesenen Identität einer VM zu einer Gruppe

Nachdem Sie auf einer VM eine systemseitig zugewiesene Identität aktiviert haben, können Sie diese einer Gruppe hinzufügen. Mit dem folgenden Verfahren wird die systemseitig zugewiesene Identität einer VM einer Gruppe hinzugefügt.

  1. Rufen Sie die ObjectID des VM-Dienstprinzipals (gemäß den Angaben im Feld Id der zurückgegebenen Werte) ab, und notieren Sie sie:

    Get-AzADServicePrincipal -displayname "myVM"
    
  2. Rufen Sie die ObjectID der Gruppe (gemäß den Angaben im Feld Id der zurückgegebenen Werte) ab, und notieren Sie sie:

    Get-AzADGroup -searchstring "myGroup"
    
  3. Fügen Sie den Dienstprinzipal der VM der Gruppe hinzu:

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

Deaktivieren einer vom System zugewiesenen verwalteten Identität auf einem virtuellen Azure-Computer

Zum Deaktivieren der systemseitig zugewiesenen verwalteten Identität auf einem virtuellen Computer benötigt Ihr Konto die Rollenzuweisung Mitwirkender für virtuelle Computer. Es sind keine anderen Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.

Wenn Sie über einen virtuellen Computer verfügen, der nicht mehr die systemzugewiesene verwaltete Identität, jedoch weiterhin benutzerzugewiesene verwaltete Identitäten benötigt, verwenden Sie das folgende Cmdlet:

  1. Rufen Sie die VM-Eigenschaften mithilfe des Cmdlets Get-AzVM ab, und legen Sie für den -IdentityType-Parameter UserAssigned fest:

    $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>..."
    

Bei einem virtuellen Computer, der die systemzugewiesene verwaltete Identität nicht mehr benötigt und über keine benutzerzugewiesenen verwalteten Identitäten verfügt, verwenden Sie die folgenden Befehle:

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

Benutzerseitig zugewiesene verwaltete Identität

In diesem Abschnitt erfahren Sie, wie Sie mithilfe von Azure PowerShell eine benutzerzugewiesene verwaltete Identität zu einem virtuellen Computer hinzufügen und von diesem entfernen.

Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität zu einem virtuellen Computer bei der Erstellung

Für die Zuweisung einer benutzerseitig zugewiesenen Identität zu einem virtuellen Computer benötigt Ihr Konto die Rollenzuweisungen Mitwirkender für virtuelle Computer und Operator für verwaltete Identität. Es sind keine anderen Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.

  1. Verwenden Sie einen der folgenden Schnellstarts für virtuelle Azure-Computer, und setzen Sie nur die erforderlichen Abschnitte um („Anmelden bei Azure“, „Erstellen einer Ressourcengruppe“, „Erstellen einer Netzwerkgruppe“, „Erstellen des virtuellen Computers“).

    Wenn Sie zum Abschnitt zum Erstellen der VM gelangen, nehmen Sie eine kleine Änderung an der Syntax des Cmdlets New-AzVMConfig vor. Fügen Sie die Parameter -IdentityType UserAssigned und -IdentityID für die Bereitstellung des virtuellen Computers mit einer benutzerzugewiesenen Identität hinzu. Ersetzen Sie <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP> und <USER ASSIGNED IDENTITY NAME> durch Ihre eigenen Werte. Beispiel:

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

Zuweisen einer vom Benutzer zugewiesenen verwalteten Identität zu einem vorhandenen virtuellen Azure-Computer

Für die Zuweisung einer benutzerseitig zugewiesenen Identität zu einem virtuellen Computer benötigt Ihr Konto die Rollenzuweisungen Mitwirkender für virtuelle Computer und Operator für verwaltete Identität. Es sind keine anderen Microsoft Entra-Verzeichnisrollenzuweisungen erforderlich.

  1. Erstellen Sie mit dem Cmdlet New-AzUserAssignedIdentity eine vom Benutzer zugewiesene verwaltete Identität. Notieren Sie sich die Id in der Ausgabe, da Sie diese Information im nächsten Schritt benötigen.

    Wichtig

    Für die Erstellung von durch Benutzer zugewiesenen verwalteten Identitäten werden nur alphanumerische Zeichen, Unter- und Bindestriche (0-9, a-z bzw. A-Z, _ oder -) unterstützt. Darüber hinaus sollten Namen zwischen 3 und 128 Zeichen enthalten, damit die Zuordnung zur VM/VMSS ordnungsgemäß funktioniert. Weitere Informationen finden Sie unter FAQs und bekannte Probleme mit der verwalteten Dienstidentität (Managed Service Identity, MSI) für Azure Active Directory.

    New-AzUserAssignedIdentity -ResourceGroupName <RESOURCEGROUP> -Name <USER ASSIGNED IDENTITY NAME>
    
  2. Rufen Sie zunächst die VM-Eigenschaften mithilfe des Cmdlets Get-AzVM ab. Weisen Sie der Azure-VM anschließend mit den Schaltern -IdentityType und -IdentityID im Cmdlet Update-AzVM eine vom Benutzer zugewiesene verwaltete Identität zu. Der Wert für den Parameter -IdentityId ist die Id, die Sie im vorherigen Schritt notiert haben. Ersetzen Sie <VM NAME>, <SUBSCRIPTION ID>, <RESROURCE GROUP> und <USER ASSIGNED IDENTITY NAME> durch Ihre eigenen Werte.

    Warnung

    Um alle zuvor vom Benutzer zugewiesenen verwalteten Identitäten zu erhalten, die dem virtuellen Computer zugewiesen sind, fragen Sie die Eigenschaft Identity des VM-Objekts ab (z. B. $vm.Identity). Wenn vom Benutzer zugewiesene verwaltete Identitäten zurückgegeben werden, nehmen Sie diese in den folgenden Befehl auf, zusammen mit der neuen vom Benutzer zugewiesenen verwalteten Identität, die Sie der VM zuweisen möchten.

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

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

Für das Entfernen einer benutzerseitig zugewiesenen Identität von einem virtuellen Computer benötigt Ihr Konto die Rollenzuweisung Mitwirkender für virtuelle Computer.

Wenn Ihr virtueller Computer mehrere benutzerzugewiesene Identitäten umfasst, können Sie mit den folgenden Befehlen alle bis auf die letzte Identität entfernen. Ersetzen Sie die Parameterwerte <RESOURCE GROUP> und <VM NAME> durch Ihre eigenen Werte. <USER ASSIGNED IDENTITY NAME> ist die Namenseigenschaft der benutzerzugewiesenen verwalteten Identität, die weiterhin auf dem virtuellen Computer festgelegt sein sollte. Diese Informationen können mithilfe einer Abfrage ermittelt werden, indem nach der Identity-Eigenschaft des VM-Objekts gesucht wird. Beispiel: $vm.Identity:

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

Wenn Ihr virtueller Computer keine systemseitig zugewiesene verwaltete Identität besitzt und Sie alle benutzerseitig zugewiesenen verwalteten Identitäten entfernen möchten, verwenden Sie den folgenden Befehl:

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

Wenn der virtuelle Computer sowohl system- als auch benutzerzugewiesene verwaltete Identitäten aufweist, können Sie alle benutzerzugewiesenen verwalteten Identitäten entfernen, indem Sie in den Modus wechseln, in dem nur systemzugewiesene verwaltete Identitäten verwendet werden.

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

Nächste Schritte