Verwenden einer systemseitig zugewiesenen verwalteten Identität eines virtuellen Linux-Computers für den Zugriff auf Azure Resource Manager

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.

In dieser Schnellstartanleitung wird gezeigt, wie Sie eine systemseitig zugewiesene Identität als Identität eines virtuellen Linux-Computers verwenden, um auf die Azure Resource Manager-API zuzugreifen. Verwaltete Identitäten für Azure-Ressourcen werden von Azure automatisch verwaltet und ermöglichen Ihnen die Authentifizierung für Dienste, die die Microsoft Entra-Authentifizierung unterstützen, ohne dass Sie Anmeldeinformationen in Ihren Code einfügen müssen. Folgendes wird vermittelt:

  • Gewähren des Zugriffs auf eine Ressourcengruppe in Azure Resource Manager für Ihren virtuellen Computer
  • Abrufen eines Zugriffstokens mithilfe der VM-Identität und Verwenden dieses Zugriffstokens zum Aufrufen von Azure Resource Manager

Voraussetzungen

Gewähren von Zugriff

Tipp

Die Schritte in diesem Artikel können je nach dem Portal, mit dem Sie beginnen, geringfügig variieren.

Mithilfe von verwalteten Identitäten für Azure-Ressourcen kann der Code Zugriffstoken zur Authentifizierung von Ressourcen abrufen, die die Microsoft Entra-Authentifizierung unterstützen. Die Azure Resource Manager-API unterstützt die Microsoft Entra-Authentifizierung. Zunächst müssen Sie dieser VM-Identität Zugriff auf eine Ressource in Azure Resource Manager erteilen. In diesem Fall handelt es sich dabei um die Ressourcengruppe, die den virtuellen Computer enthält.

  1. Melden Sie sich mit Ihrem Administratorkonto beim Azure-Portal an.

  2. Navigieren Sie zu der Registerkarte für die Ressourcengruppen.

  3. Wählen Sie die Ressourcengruppe aus, für die Sie der verwalteten Identität des virtuellen Computers den Zugriff erteilen möchten.

  4. Wählen Sie im linken Bereich die Option Zugriffssteuerung (IAM) aus.

  5. Wählen Sie Hinzufügen und dann Rollenzuweisung hinzufügen aus.

  6. Wählen Sie auf der Registerkarte Rolle die Rolle Leser aus. Mit dieser Rolle können Sie alle Ressourcen anzeigen, aber keine Änderungen vornehmen.

  7. Wählen Sie auf der Registerkarte Mitglieder für Zugriff zuweisen zu die Option Verwaltete Identität aus. Wählen Sie dann + Mitglieder auswählen aus.

  8. Stellen Sie sicher, dass in der Dropdownliste Abonnement das richtige Abonnement aufgeführt wird. Wählen Sie unter Ressourcengruppe die Option Alle Ressourcengruppen.

  9. Wählen Sie in der Dropdownliste Identität verwalten den Eintrag Virtueller Computer aus.

  10. Wählen Sie abschließend unter Auswählen in der Dropdownliste Ihren virtuellen Windows-Computer aus, und klicken Sie auf Speichern.

    Screenshot: Hinzufügen der Leserrolle zur verwalteten Identität

Abrufen eines Zugriffstokens mithilfe der systemseitig zugewiesenen verwalteten Identität des virtuellen Computers und Verwenden dieses Zugriffstokens zum Aufrufen von Resource Manager

Zum Ausführen dieser Schritte benötigen Sie einen SSH-Client. Wenn Sie Windows verwenden, können Sie den SSH-Client im Windows-Subsystem für Linux nutzen. Wenn Sie Hilfe beim Konfigurieren der SSH-Clientschlüssel benötigen, lesen Sie die Informationen unter Vorgehensweise: Verwenden von SSH-Schlüsseln mit Windows in Azure oder Erstellen und Verwenden eines SSH-Schlüsselpaars (öffentlich und privat) für virtuelle Linux-Computer in Azure.

  1. Navigieren Sie im Portal zu Ihrem virtuellen Linux-Computer, und wählen Sie in der Übersicht die Option Verbinden aus.

  2. Verbinden Sie den virtuellen Computer mit dem gewünschten SSH-Client.

  3. Übermitteln Sie im Terminalfenster mit curl eine Anforderung an den lokalen Endpunkt der verwalteten Identitäten für Azure-Ressourcen, um ein Zugriffstoken für Azure Resource Manager abzurufen.   Die curl-Anforderung für das Zugriffstoken finden Sie weiter unten.

curl 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/' -H Metadata:true

Hinweis

Der Wert des resource-Parameters muss exakt mit dem von Microsoft Entra ID erwarteten Wert übereinstimmen. Für die Resource Manager-Ressourcen-ID müssen Sie den nachgestellten Schrägstrich im URI verwenden.

Die Antwort enthält das Zugriffstoken, das Sie für den Zugriff auf Azure Resource Manager benötigen.

Antwort:

{
  "access_token":"eyJ0eXAiOi...",
  "refresh_token":"",
  "expires_in":"3599",
  "expires_on":"1504130527",
  "not_before":"1504126627",
  "resource":"https://management.azure.com",
  "token_type":"Bearer"
}

Dieses Zugriffstoken können Sie verwenden, um auf Azure Resource Manager zuzugreifen, beispielsweise um die Details der Ressourcengruppe zu lesen, für die Sie diesem virtuellen Computer zuvor den Zugriff gewährt haben. Ersetzen Sie die Werte von <SUBSCRIPTION-ID>, <RESOURCE-GROUP> und <ACCESS-TOKEN> mit den Werten, die Sie zuvor erstellt haben.

Hinweis

Bei der URL wird die Groß-/Kleinschreibung beachtet. Achten Sie daher darauf, dieselbe Groß- und Kleinschreibung zu verwenden wie zuvor beim Benennen der Ressourcengruppe. Beachten Sie auch den Großbuchstaben „G“ in „resourceGroup“.  

curl https://management.azure.com/subscriptions/<SUBSCRIPTION-ID>/resourceGroups/<RESOURCE-GROUP>?api-version=2016-09-01 -H "Authorization: Bearer <ACCESS-TOKEN>" 

Die Antwort enthält die spezifischen Informationen zur Ressourcengruppe:

{
"id":"/subscriptions/98f51385-2edc-4b79-bed9-7718de4cb861/resourceGroups/DevTest",
"name":"DevTest",
"location":"westus",
"properties":
{
  "provisioningState":"Succeeded"
  }
} 

Nächste Schritte

In dieser Schnellstartanleitung haben Sie gelernt, wie Sie eine systemseitig zugewiesene verwaltete Identität verwenden, um auf die Azure Resource Manager-API zuzugreifen. Weitere Informationen zu Azure Resource Manager finden Sie hier: