Auf Umgebungen mit Mitarbeiteridentitätsföderation zugreifen

Cloud Composer 1 Cloud Composer 2

Auf dieser Seite wird beschrieben, wie Sie den Nutzerzugriff auf Ihre Cloud Composer-Umgebung mit der Mitarbeiteridentitätsföderation konfigurieren.

Mitarbeiteridentitätsföderation in Cloud Composer

Mit der Mitarbeiteridentitätsföderation können Sie einen externen Identitätsanbieter (Identity Provider, IdP) verwenden, um eine Gruppe von Nutzern wie Mitarbeiter, Partner und Auftragnehmer mithilfe von IAM zu authentifizieren und zu autorisieren, sodass die Nutzer auf Google Cloud-Dienste zugreifen können. Weitere Informationen zur Mitarbeiteridentitätsföderation finden Sie unter Mitarbeiteridentitätsföderation.

Wenn die Mitarbeiteridentitätsföderation in Ihrem Projekt konfiguriert ist, können Sie auf folgende Arten auf Ihre Umgebung zugreifen:

  • Seite „Cloud Composer“ in der Google Cloud Console
  • Airflow-UI
  • Google Cloud CLI, einschließlich Ausführen von Airflow CLI-Befehlen
  • Cloud Composer API
  • Airflow REST API

Hinweise

  • Alle neuen Cloud Composer-Umgebungen, die ab Version 2.1.11 und Airflow Version 2.4.3 erstellt wurden, unterstützen die Mitarbeiteridentitätsföderation. Sie müssen Ihre Umgebung nicht auf eine bestimmte Weise konfigurieren, um die Mitarbeiteridentitätsföderation zu unterstützen.

  • Umgebungen, die vor Version 2.1.11 und Airflow Version 2.4.3 erstellt und auf höhere Versionen aktualisiert wurden, unterstützen keine Mitarbeiteridentitätsföderation. Sie können prüfen, ob Ihre Umgebung die Mitarbeiteridentitätsföderation unterstützt.

  • Für den Bucket der Umgebung gelten Cloud Storage-Einschränkungen für die Mitarbeiteridentitätsföderation. Insbesondere müssen Sie für den Bucket der Umgebung den einheitlichen Zugriff auf Bucket-Ebene aktivieren, damit externe Identitäten ihre DAGs und Dateien in diesen Bucket hochladen können.

  • Von Airflow gesendete E-Mails enthalten nur die Airflow-UI-URL für Google-Konten. Da externe Identitäten nur über die Airflow-UI-URL für externe Identitäten auf die Airflow-UI zugreifen können, muss der Link angepasst werden (in die URL für externe Identitäten geändert).

Zugriff auf Ihre Umgebung mit Mitarbeiteridentitätsföderation einrichten

In diesem Abschnitt wird beschrieben, wie Sie den Zugriff externer Identitäten auf die Cloud Composer-Umgebung konfigurieren.

Identitätsanbieter konfigurieren

Konfigurieren Sie die Mitarbeiteridentitätsföderation für Ihren Identitätsanbieter. Folgen Sie dazu der Anleitung Mitarbeiteridentitätsföderation konfigurieren.

Externen Identitäten IAM-Rollen zuweisen

Weisen Sie in Identity and Access Management Gruppen externer Identitäten IAM-Rollen zu, damit diese auf Ihre Umgebung zugreifen und mit ihr interagieren können:

  • Eine Liste der für Cloud Composer spezifischen Rollen finden Sie unter Nutzern Rollen zuweisen. Mit der Rolle Umgebungsnutzer und Betrachter von Storage-Objekten (composer.environmentAndStorageObjectViewer) können Nutzer beispielsweise Umgebungen ansehen, auf die Airflow-UI zugreifen, DAGs über die DAG-UI aufrufen und auslösen sowie Objekte in Umgebungs-Buckets aufrufen.

  • Eine Anleitung zum Zuweisen dieser Rollen an externe Nutzer finden Sie unter Hauptkonten IAM-Rollen zuweisen.

  • Informationen zur Darstellung externer Identitäten in IAM-Richtlinien finden Sie unter Mitarbeiterpoolnutzer in IAM-Richtlinien darstellen.

Prüfen, ob neue Nutzer in der Airflow-UI-Zugriffssteuerung die richtigen Airflow-Rollen erhalten

Cloud Composer behandelt Airflow-Nutzer für externe Identitäten auf dieselbe Weise wie für Nutzer von Google-Konten. Anstelle einer E-Mail-Adresse wird eine Hauptkennung verwendet. Wenn eine externe Identität zum ersten Mal auf die Airflow-UI zugreift, wird ein Airflow-Nutzer automatisch mit der Standardrolle im rollenbasierten Airflow-Zugriffssteuerungssystem registriert.

Prüfen Sie, ob neue Nutzer in der Airflow-UI-Zugriffssteuerung die richtigen Airflow-Rollen erhalten. Es gibt zwei Möglichkeiten:

  • Lassen Sie externen Identitäten die Standardrolle zu, nachdem sie zum ersten Mal auf die Airflow-UI zugegriffen haben. Bei Bedarf können Airflow-Administratoren diese Rolle in eine andere Rolle ändern.
  • Sie können externe Identitäten mit einer Reihe erforderlicher Rollen vorregistrieren. Dazu fügen Sie Airflow-Nutzerdatensätze hinzu, wobei die Felder für Nutzername und E-Mail auf ihre Haupt-IDs gesetzt sind. Auf diese Weise erhalten externe Identitäten die von Ihnen zugewiesene Rolle, nicht die Standardrolle.

Prüfen, ob eine Umgebung die Mitarbeiteridentitätsföderation unterstützt

Führen Sie den folgenden Google Cloud CLI-Befehl aus, um zu prüfen, ob Ihre Umgebung die Mitarbeiteridentitätsföderation unterstützt. Wenn die Ausgabe einen URI enthält, unterstützt Ihre Umgebung die Mitarbeiteridentitätsföderation.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.airflowByoidUri)"

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.

Beispiel:

gcloud composer environments describe example-environment \
  --location us-central1 \
  --format="value(config.airflowByoidUri)"

Seite „Cloud Composer“ in der Google Cloud Console aufrufen

Die Konsole der Google Cloud-Mitarbeiteridentitätsföderation bietet Zugriff auf die Cloud Composer-Seite.

Über die Seite Composer in der Konsole der Google Cloud-Mitarbeiteridentitätsföderation können Sie auf die UI für die Verwaltung von Umgebungen, Cloud Composer-Logs, Monitoring und die DAG-UI zugreifen.

Alle Links zur Airflow-UI in der föderierten Konsole verweisen auf den Airflow-UI-Zugriffspunkt für externe Identitäten.

Bei Umgebungen in Versionen vor 2.1.11 und/oder Airflow-Versionen vor 2.4.3 werden die Airflow-UI-Links möglicherweise als „Nicht verfügbar“ gekennzeichnet. Dies weist darauf hin, dass diese Umgebung keine Nutzer der Mitarbeiteridentitätsföderation in der Airflow-UI unterstützt. Auf die Airflow-UI für diese Umgebung kann nur mit Google-Konten zugegriffen werden.

Auf Airflow-UI zugreifen

Cloud Composer-Umgebungen haben zwei URLs für die Airflow-UI: eine für Google-Konten und eine für externe Identitäten. Externe Identitäten müssen über die URL für externe Identitäten auf die Airflow-UI zugreifen.

  • Die URL für externe Identitäten lautet https://<UNIQUE_ID>.composer.byoid.googleusercontent.com.

  • Die URL für Google-Konten lautet https://<UNIQUE_ID>.composer.googleusercontent.com.

Nur Nutzer, die mit externen Identitäten authentifiziert sind, können auf die URL für externe Identitäten zugreifen. Wenn ein Nutzer die URL für externe Identitäten aufruft, während er nicht angemeldet ist, wird er zuerst zum Authentifizierungsportal weitergeleitet, in dem er den Namen seines Personalpool-Anbieters angibt. Dann wird er zur Anmeldung an seinen Identitätsanbieter und schließlich zur Airflow-UI der Umgebung weitergeleitet.

In der Google Cloud Console auf die DAG-UI zugreifen

Die DAG-UI ist für externe Identitätsnutzer als Teil der föderierten Konsole verfügbar. Sie können den Zugriff mit IAM-Richtlinien steuern.

Der rollenbasierte Zugriff von Airflow in Umgebungen mit vollständiger Unterstützung der Mitarbeiteridentitätsföderation wird ebenfalls berücksichtigt und kann verwendet werden, um einzuschränken, welche DAGs für einzelne Nutzer sichtbar sind. Dazu werden Rollen eingerichtet, wie unter Airflow-UI-Zugriffssteuerung verwenden beschrieben.

Auf die Google Cloud CLI zugreifen

Für den Zugriff auf Ihre Umgebung über die Google Cloud CLI müssen externe Identitäten Folgendes tun:

  1. Melden Sie sich über die Google Cloud CLI mit einer externen Identität an.
  2. gcloud composer environments-Befehle ausführen.

Auf die Cloud Composer API zugreifen

Die Cloud Composer API kann mit externen Identitäten verwendet werden, um alle Composer-Umgebungen mit den unterstützten Authentifizierungsmethoden wie OAuth-Tokens zu verwalten.

Airflow REST API

Die Airflow REST API ist am Endpunkt für externe Identitäten mit den unterstützten Authentifizierungsmethoden wie OAuth-Tokens verfügbar.

Verwenden Sie den Befehl gcloud composer environments describe, um die URL des Endpunkts für externe Identitäten für Ihre Umgebung abzurufen. Eine Anleitung finden Sie im Abschnitt Prüfen, ob eine Umgebung die Mitarbeiteridentitätsföderation unterstützt.

Nächste Schritte