View a markdown version of this page

Azure-Ressourcen verbinden - AWS DevOps Agentin

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Azure-Ressourcen verbinden

Die Integration von Azure Resources ermöglicht es dem AWS DevOps Agenten, während der Untersuchung von Vorfällen Ressourcen in Ihren Azure-Abonnements zu erkennen und zu untersuchen. Der Agent verwendet Azure Resource Graph für die Ressourcenerkennung und kann auf Metriken, Protokolle und Konfigurationsdaten in Ihrer Azure-Umgebung zugreifen.

Diese Integration folgt einem zweistufigen Prozess: Registrieren Sie Azure auf AWS Kontoebene und verknüpfen Sie dann bestimmte Azure-Abonnements mit einzelnen Agent Spaces. Sie können mehr als eine Azure-Ressourcenregistrierung in einem Konto erstellen und denselben Azure-Mandanten in mehr als einem AWS Konto registrieren. Wenn Sie die App-Registrierung verwenden, muss für jede Registrierung eine andere Anwendung (Client-ID) verwendet werden. Weitere Informationen finden Sie unter Azure verbinden.

Voraussetzungen

Stellen Sie vor dem Verbinden von Azure-Ressourcen sicher, dass Sie über Folgendes verfügen:

  • Zugriff auf die AWS DevOps Agent-Konsole

  • Ein Azure-Konto mit Zugriff auf das Zielabonnement

  • Für die Admin-Zustimmungsmethode: ein Konto mit der Berechtigung zur Durchführung der Administratorzustimmung in Microsoft Entra ID

  • Für die App-Registrierungsmethode: Eine Entra-Anwendung mit Berechtigungen zur Konfiguration von Anmeldeinformationen für Verbundidentitäten und aktiviertem Outbound Identity Federation in Ihrem Konto AWS

Die Admin-Consent-Methode verwendet einen einwilligungsbasierten Ablauf mit der vom AWS DevOps Agenten verwalteten Anwendung.

Schritt 1: Starten Sie die Registrierung

  1. Melden Sie sich bei der AWS Management Console an und navigieren Sie zur AWS DevOps Agent-Konsole

  2. Rufen Sie die Seite „Capability Providers“ auf

  3. Suchen Sie den Abschnitt Azure Cloud und wählen Sie Registrieren

  4. Wählen Sie die Registrierungsmethode Admin Consent aus

  1. Überprüfen Sie die angeforderten Berechtigungen

  2. Wählen Sie, um fortzufahren — Sie werden auf die Microsoft Entra-Seite mit der Administratorzustimmung weitergeleitet

  3. Melden Sie sich mit einem Hauptbenutzerkonto an, das berechtigt ist, die Zustimmung des Administrators zu erteilen

  4. Prüfen Sie den AWS DevOps Agentenantrag und erteilen Sie ihm die Zustimmung

Schritt 3: Benutzerautorisierung abschließen

  1. Nach der Zustimmung des Administrators werden Sie zur Benutzerautorisierung aufgefordert, um Ihre Identität als Mitglied des autorisierten Mandanten zu überprüfen

  2. Melden Sie sich mit einem Konto an, das demselben Azure-Mandanten gehört

  3. Nach der Autorisierung werden Sie mit einem Erfolgsstatus zurück zur AWS DevOps Agentenkonsole weitergeleitet

Schritt 4: Rollen zuweisen

Weitere Informationen finden Sie weiter unten unter Zuweisen von Azure-Rollen. Suchen Sie bei der Auswahl von Mitgliedern nach einem AWS DevOps Agenten.

Registrierung von Azure-Ressourcen über die App-Registrierung

Die App-Registrierungsmethode verwendet Ihre eigene Entra-Anwendung mit föderierten Identitätsanmeldeinformationen.

Schritt 1: Starten Sie die Registrierung

  1. Rufen Sie in der AWS DevOps Agent-Konsole die Seite Capability Providers auf

  2. Suchen Sie den Abschnitt Azure Cloud und wählen Sie Registrieren

  3. Wählen Sie die Methode zur App-Registrierung aus

Schritt 2: Erstellen und konfigurieren Sie Ihre Entra-Anwendung

Folgen Sie den Anweisungen in der Konsole, um:

  1. Aktivieren Sie Outbound Identity Federation in Ihrem AWS Konto (gehen Sie in der IAM-Konsole zu Kontoeinstellungen → Outbound Identity Federation)

  2. Erstellen Sie eine Entra-Anwendung in Ihrer Microsoft Entra-ID oder verwenden Sie eine vorhandene

  3. Konfigurieren Sie die Anmeldeinformationen für die Verbundidentität in der Anwendung

Schritt 3: Geben Sie die Registrierungsdetails ein

Füllen Sie das Anmeldeformular aus mit:

  • Mandanten-ID — Ihre Azure-Mandanten-ID

  • Mandantenname — Ein Anzeigename für den Mandanten

  • Client-ID — Die Anwendungs-ID (Client) der Entra-Anwendung, die Sie erstellt haben

  • Zielgruppe — Die Zielgruppen-ID für die Verbundanmeldeinformationen

Schritt 4: Erstellen Sie die IAM-Rolle

Eine IAM-Rolle wird automatisch erstellt, wenn Sie die Registrierung über die Konsole einreichen. Sie ermöglicht es dem AWS DevOps Agenten, Anmeldeinformationen anzunehmen und sie aufzurufensts:GetWebIdentityToken.

Schritt 5: Rollen zuweisen

Weitere Informationen finden Sie weiter unten unter Zuweisen von Azure-Rollen. Suchen Sie nach der Entra-Anwendung, die Sie bei der Auswahl von Mitgliedern erstellt haben.

Schritt 6: Schließen Sie die Registrierung ab

  1. Bestätigen Sie die Konfiguration in der AWS DevOps Agent-Konsole

  2. Wählen Sie Senden, um die Registrierung abzuschließen

Zuweisen von Azure-Rollen

Gewähren Sie der Anwendung nach der Registrierung Lesezugriff auf Ihr Azure-Abonnement. Dieser Schritt ist für die Methoden Admin Consent und App Registration identisch.

  1. Navigieren Sie im Azure-Portal zu Ihrem Zielabonnement

  2. Gehen Sie zu Access Control (IAM)

  3. Wählen Sie Hinzufügen > Rollenzuweisung hinzufügen

  4. Wählen Sie die Rolle Leser aus und klicken Sie auf Weiter

  5. Wählen Sie Mitglieder auswählen und suchen Sie nach der Anwendung (entweder AWS DevOps Agent für Admin-Zustimmung oder Ihre eigene Entra-Anwendung für die App-Registrierung)

  6. Wählen Sie die Anwendung aus und wählen Sie Prüfen + zuweisen

  7. (Optional) Um dem Agenten den Zugriff auf Azure Kubernetes Service (AKS) -Cluster zu ermöglichen, führen Sie das folgende AKS-Zugriffssetup durch.

Einrichtung des AKS-Zugriffs (optional)

Schritt 1: Zugriff auf Azure Resource Manager (ARM) -Ebene

Weisen Sie der Anwendung die Azure Kubernetes Service Cluster-Benutzerrolle zu.

Gehen Sie im Azure-Portal zu Abonnements → Abonnement auswählen → Zugriffskontrolle (IAM) → Rollenzuweisung hinzufügen → Azure Kubernetes Service Cluster-Benutzerrolle auswählen → der Anwendung zuweisen (entweder AWS DevOps Agent for Admin Consent oder Ihre eigene Entra-Anwendung für die App-Registrierung).

Dies deckt alle AKS-Cluster im Abonnement ab. Um einen Bereich auf bestimmte Cluster zuzuweisen, weisen Sie ihn stattdessen auf der Ebene der Ressourcengruppen oder der einzelnen Cluster zu.

Schritt 2: Zugriff auf die Kubernetes-API

Wählen Sie eine Option, die auf der Authentifizierungskonfiguration Ihres Clusters basiert:

Option A: Azure Role-Based Access Control (RBAC) für Kubernetes (empfohlen)

  1. Aktivieren Sie Azure RBAC auf dem Cluster, falls es nicht bereits aktiviert ist: Azure-Portal → AKS-Cluster → Einstellungen → Sicherheitskonfiguration → Authentifizierung und Autorisierung → wählen Sie Azure RBAC

  2. Weisen Sie eine schreibgeschützte Rolle zu: Azure-Portal → Abonnements → Abonnement auswählen → Access Control (IAM) → Rollenzuweisung hinzufügen → Azure Kubernetes Service RBAC Reader auswählen → der Anwendung zuweisen

Dies deckt alle AKS-Cluster im Abonnement ab.

Option B: Azure Active Directory (Azure AD) + Kubernetes RBAC

Verwenden Sie diese Option, wenn Ihr Cluster bereits die standardmäßige Azure AD-Authentifizierungskonfiguration verwendet und Sie Azure RBAC nicht aktivieren möchten. Dies erfordert eine Einrichtung pro Clusterkubectl.

  1. Speichern Sie das folgende Manifest unter: devops-agent-reader.yaml

apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: devops-agent-reader rules: - apiGroups: [""] resources: ["namespaces", "pods", "pods/log", "services", "events", "nodes"] verbs: ["get", "list"] - apiGroups: ["apps"] resources: ["deployments", "replicasets", "statefulsets", "daemonsets"] verbs: ["get", "list"] - apiGroups: ["metrics.k8s.io"] resources: ["pods", "nodes"] verbs: ["get", "list"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: devops-agent-reader-binding subjects: - kind: User name: "<SERVICE_PRINCIPAL_OBJECT_ID>" apiGroup: rbac.authorization.k8s.io roleRef: kind: ClusterRole name: devops-agent-reader apiGroup: rbac.authorization.k8s.io
  1. <SERVICE_PRINCIPAL_OBJECT_ID>Ersetzen Sie es durch die Objekt-ID Ihres Service Principals. Um sie zu finden: Azure-Portal → Entra-ID → Unternehmensanwendungen → suchen Sie nach dem Anwendungsnamen (entweder AWS DevOps Agent for Admin Consent oder Ihre eigene Entra-Anwendung für die App-Registrierung).

  2. Bewerben Sie sich für jeden Cluster:

az aks get-credentials --resource-group <rg> --name <cluster-name> kubectl apply -f devops-agent-reader.yaml

Least-privileged benutzerdefinierte Rolle (optional)

Für eine strengere Zugriffskontrolle können Sie anstelle der allgemeinen Reader-Rolle eine benutzerdefinierte Azure-Rolle erstellen, die nur auf die Ressourcenanbieter beschränkt ist, die AWS DevOps Agent verwendet:

{ "Name": "AWS DevOps Agent - Azure Reader", "Description": "Least-privilege read-only access for AWS DevOps Agent incident investigations.", "Actions": [ "Microsoft.AlertsManagement/*/read", "Microsoft.Compute/*/read", "Microsoft.ContainerRegistry/*/read", "Microsoft.ContainerService/*/read", "Microsoft.ContainerService/managedClusters/commandResults/read", "Microsoft.DocumentDB/*/read", "Microsoft.Insights/*/read", "Microsoft.KeyVault/vaults/read", "Microsoft.ManagedIdentity/*/read", "Microsoft.Monitor/*/read", "Microsoft.Network/*/read", "Microsoft.OperationalInsights/*/read", "Microsoft.ResourceGraph/resources/read", "Microsoft.ResourceHealth/*/read", "Microsoft.Resources/*/read", "Microsoft.Sql/*/read", "Microsoft.Storage/*/read", "Microsoft.Web/*/read" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/{your-subscription-id}" ] }

Zuordnen eines Abonnements zu einem Agentenbereich

Nachdem Sie Azure auf Kontoebene registriert haben, ordnen Sie Ihren Agent Spaces bestimmte Abonnements zu:

  1. Wählen Sie in der AWS DevOps Agent-Konsole Ihren Agent Space aus

  2. Gehen Sie zur Registerkarte „Funktionen“

  3. Wählen Sie im Abschnitt Sekundäre Quellen die Option Hinzufügen

  4. Wählen Sie die Azure-Registrierung aus, die das Abonnement enthält, das Sie verwenden möchten.

  5. Geben Sie die Abonnement-ID für das Azure-Abonnement an, das Sie verknüpfen möchten

  6. Wählen Sie Hinzufügen, um die Zuordnung abzuschließen

Sie können demselben Agent Space mehrere Abonnements zuordnen, einschließlich Abonnements aus unterschiedlichen Registrierungen, um dem Agenten einen Überblick über Ihre Azure-Umgebung zu geben. Um ein weiteres Abonnement zu verknüpfen, wiederholen Sie diese Schritte.

Verwalten von Azure Resources-Verbindungen

  • Verbundene Abonnements anzeigen — Auf der Registerkarte Funktionen werden im Abschnitt Sekundäre Quellen alle verbundenen Azure-Abonnements aufgeführt.

  • Abonnement entfernen — Um ein Abonnement von einem Agent Space zu trennen, wählen Sie es in der Liste der sekundären Quellen aus und klicken Sie auf Entfernen. Dies hat keine Auswirkungen auf die Registrierung auf Kontoebene.

  • Entfernen der Registrierung — Um die Azure Cloud-Registrierung vollständig zu entfernen, gehen Sie zur Seite Capability Providers und löschen Sie die Registrierung. Alle Agent Space-Zuordnungen müssen zuerst entfernt werden.