Verwalten von Azure-Abonnements mit der Azure CLI

Die Azure CLI hilft Ihnen beim Verwalten Ihres Azure-Abonnements, beim Erstellen von Verwaltungsgruppen und beim Sperren von Abonnements. Möglicherweise verfügen Sie über mehrere Abonnements in Azure. Sie können mehreren Organisationen angehören, oder Ihre Organisation teilt unter Umständen den Zugriff auf bestimmte Ressourcen gruppierungsübergreifend auf. Die Azure CLI unterstützt sowohl die globale Auswahl eines Abonnements als auch die Auswahl per Befehl.

Ausführliche Informationen zu Abonnements, der Abrechnung und der Kostenverwaltung finden Sie in der Dokumentation zur Abrechnungs- und Kostenverwaltung in Azure.

Terminologie

Ein Mandant ist eine Instanz von Microsoft Entra ID, in der sich Informationen zu einer einzelnen Organisation befinden. Eine mehrfach-mandantenfähige Organisation ist eine Organisation, die über mehr als eine Instanz von Microsoft Entra ID verfügt. Ein Mandant verfügt über mindestens ein Abonnement und mindestens einen Benutzer.

Benutzer sind Konten, die sich bei Azure anmelden, um Ressourcen zu erstellen, zu verwalten und zu verwenden. Ein Benutzer hat möglicherweise Zugriff auf mehrere Mandanten und Abonnements.

Abonnements sind die Vereinbarungen mit Microsoft, die die Verwendung von Clouddiensten wie Azure regeln. Jede Ressource ist einem Abonnement zugeordnet. Abonnements enthalten Ressourcengruppen.

Eine Azure-Ressourcengruppe ist ein Container, der verwandte Ressourcen für eine Azure-Lösung enthält. Informationen zum Verwalten von Ressourcengruppen innerhalb Ihres Abonnements finden Sie unter Verwalten von Azure-Ressourcengruppen mit der Azure CLI.

Abrufen des aktiven Mandanten

Verwenden Sie az account tenant list oder az account show, um die aktive Mandanten-ID abzurufen.

az account tenant list

az account show

Ändern des aktiven Mandanten

Zum Wechseln von Mandanten haben Sie zwei Optionen.

  • Ändern Sie das aktive Abonnement.

  • Melden Sie sich als Benutzer innerhalb des gewünschten Mandanten an. Verwenden Sie az login, um den aktiven Mandanten zu ändern und die Abonnementliste zu aktualisieren, zu der Sie gehören.

    # sign in as a different user
    az login --user <myAlias@myCompany.com> --password <myPassword>
    
    # sign in with a different tenant
    az login --tenant <myTenantID>
    

    Wenn Ihre Organisation Multi-Faktor-Authentifizierung erfordert, erhalten Sie bei Verwendung von az login --user möglicherweise diesen Fehler:

    Due to a configuration change made by your administrator, or because you moved to a new location, you must use multi-factor authentication to access...
    

    Bei Verwendung des alternativen Befehls az login --tenant werden Sie aufgefordert, eine HTTPS-Seite zu öffnen und den bereitgestellten Code einzugeben. Anschließend können Sie dann die Multi-Faktor-Authentifizierung verwenden und sich erfolgreich anmelden. Weitere Informationen zu Anmeldeoptionen mit der Azure CLI finden Sie unter Anmelden mit der Azure CLI.

Abonnementinformationen abrufen

Die meisten Azure CLI-Befehle werden im Kontext eines Abonnements ausgeführt. Sie können angeben, in welchem Abonnement Sie arbeiten möchten. Verwenden Sie dazu den Parameter --subscription in Ihrem Befehl. Wenn Sie kein Abonnement angeben, verwendet der Befehl das aktuelle, aktive Abonnement.

Führen Sie den Befehl az account show oder az account list aus, um Ihr derzeit verwendetes Abonnement anzuzeigen bzw. eine Liste mit den verfügbaren Abonnements abzurufen. Wechseln Sie zu Erlernen der Verwendung von Bash mit der Azure CLI, um weitere Beispiele für die Verwendung dieser Befehle zu sehen.

Hier finden Sie Beispiele zum Abrufen von Abonnementinformationen:

# get the current default subscription using show
az account show --output table

# get the current default subscription using list
az account list --query "[?isDefault]"

# get a subscription that contains search words or phrases
az account list --query "[?contains(name,'search phrase')].{SubscriptionName:name, SubscriptionID:id, TenantID:tenantId}" --output table

Sie können die Abonnementinformationen auch in einer Variable zur Verwendung in einem Skript speichern.

# store the default subscription in a variable
subscriptionId="$(az account list --query "[?isDefault].id" --output tsv)"
echo $subscriptionId

# store a subscription of certain name in a variable
subscriptionId="$(az account list --query "[?name=='my case sensitive subscription full name'].id" --output tsv)"
echo $subscriptionId

Tipp

Der Parameter --output ist ein globaler Parameter und für alle Befehle verfügbar. Mit dem Wert table wird die Ausgabe in einem benutzerfreundlichen Format angezeigt. Weitere Informationen finden Sie unter Ausgabeformate für Azure CLI-Befehle.

Ändern des aktiven Abonnements

Azure-Abonnements verfügen sowohl über einen Namen als auch über eine ID. Sie können mit az account set zu einem anderen Abonnement wechseln, indem Sie dabei die gewünschte Abonnement-ID oder den Namen angeben.

# change the active subscription using the subscription name
az account set --subscription "My Demos"

# change the active subscription using the subscription ID
az account set --subscription "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Sie können Ihr Abonnement auch über eine Variable ändern. Hier ist ein Beispiel:

# change the active subscription using a variable
subscriptionId="$(az account list --query "[?name=='my case sensitive subscription full name'].id" --output tsv)"
az account set --subscription $subscriptionId

Wenn Sie zu einem Abonnement wechseln, das sich in einem anderen Mandanten befindet, werden Sie auch den aktiven Mandanten ändern. Informationen zum Zuordnen oder Hinzufügen eines Abonnements zu einem Microsoft Entra-Mandanten finden Sie unter Zuordnen oder Hinzufügen eines Azure-Abonnements zu Ihrem Microsoft Entra-Mandanten.

Wenn Sie einen Fehler „Das Abonnement von ... ist nicht vorhanden...“ erhalten, lesen Sie Problembehandlung für mögliche Lösungen.

Erstellen von Azure-Verwaltungsgruppen

Azure-Verwaltungsgruppen enthalten Abonnements. Verwaltungsgruppen ermöglichen die Verwaltung des Zugriffs, der Richtlinien und der Compliance für diese Abonnements. Weitere Informationen finden Sie unter Was sind Azure-Verwaltungsgruppen?.

Verwenden Sie die Befehle vom Typ az account management-group zum Erstellen und Verwalten von Verwaltungsgruppen.

Mithilfe des Befehls az account management-group create können Sie eine Verwaltungsgruppe für mehrere Abonnements erstellen:

az account management-group create --name Contoso01

Verwenden Sie zum Anzeigen aller Verwaltungsgruppen den Befehl az account management-group list:

az account management-group list

Fügen Sie mithilfe des Befehls az account management-group subscription add Abonnements zur neuen Gruppe hinzu:

az account management-group subscription add --name Contoso01 --subscription "My Demos"
az account management-group subscription add --name Contoso01 --subscription "My Second Demos"

Verwenden Sie zum Entfernen eines Abonnements den Befehl az account management-group subscription remove:

az account management-group subscription remove --name Contoso01 --subscription "My Demos"

Führen Sie zum Entfernen einer Verwaltungsgruppe den Befehl az account management-group delete aus:

az account management-group delete --name Contoso01

Durch das Entfernen eines Abonnements oder das Löschen einer Verwaltungsgruppe wird ein Abonnement nicht gelöscht oder deaktiviert.

Festlegen einer Azure-Abonnementsperre

Als Administrator müssen Sie ein Abonnement möglicherweise sperren, um zu verhindern, dass Benutzer es löschen oder ändern. Weitere Informationen finden Sie unter Sperren von Ressourcen, um unerwartete Änderungen zu verhindern.

Verwenden Sie in Azure CLI die Befehle vom Typ az account lock. Beispielsweise kann der Befehl az account lock create Benutzer am Löschen eines Abonnements hindern:

az account lock create --name "Cannot delete subscription" --lock-type CanNotDelete

Hinweis

Sie müssen über Berechtigungen für ein Abonnement verfügen contributor , um Sperren zu erstellen oder zu ändern.

Verwenden Sie zum Anzeigen der aktuellen Sperren für Ihr Abonnement den Befehl az account lock list:

az account lock list --output table

Wenn Sie ein Konto als schreibgeschützt festlegen, ähnelt das Ergebnis dem Zuweisen von Berechtigungen der Rolle „Leser“ für alle Benutzer. Weitere Informationen zum Festlegen von Berechtigungen für einzelne Benutzer und Rollen finden Sie unter Hinzufügen oder Entfernen von Azure-Rollenzuweisungen mithilfe der Azure-Befehlszeilenschnittstelle.

Verwenden Sie zum Anzeigen der Details für eine Sperre den Befehl az account lock show:

az account lock show --name "Cannot delete subscription"

Sie können eine Sperre mithilfe des Befehls az account lock delete entfernen:

az account lock delete --name "Cannot delete subscription"

Problembehandlung

Das Abonnement ist nicht vorhanden

Zusätzlich zu einem typografischen Fehler können Sie diesen Fehler erhalten, wenn ein Problem mit der Zeitsteuerung für die Berechtigungen vorliegt. Wenn Sie beispielsweise Berechtigungen für neue Abonnements erhalten haben, während Ihr aktuelles Terminalfenster geöffnet ist, kann dieser Fehler auftreten. Die Lösung besteht darin, entweder Ihr Terminalfenster zu schließen und erneut zu öffnen, oder az logout und dann az login zu verwenden, um die Liste Ihrer verfügbaren Abonnements zu aktualisieren.

Hier ist ein Skript, mit dem Sie ein Abonnement suchen und ändern können.

# See what subscription you are currently using.
az account show

# Get a list of available subscriptions.
az account list --output table

# If the subscription you are seeking is not in the list
#   close and reopen your terminal window,
#   or logout and then sign in again.
az logout
az login

# Did your available subscription list change?
az account list --output table

# If the subscription you are seeking is still not in the list,
#    contact your system administrator. You cannot change your
#    subscription to an ID that is not in the list.

# If the subscription you are seeking is now in the list,
#   change your subscription.
az account set --subscription 00000000-0000-0000-0000-00000000000

Siehe auch