Mit Mitarbeiteridentitätsföderation auf Umgebungen zugreifen

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

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 Mitarbeitergruppe – 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 so auf Ihre Umgebung zugreifen:

  • Seite „Cloud Composer“ in der Google Cloud Console
  • Airflow-UI
  • Google Cloud CLI, einschließlich Ausführen von Airflow-Kommandozeilenbefehlen
  • 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 die Umgebung nicht speziell 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 die Mitarbeiteridentitätsföderation nicht. Sie können prüfen, ob Ihre Umgebung die Mitarbeiteridentitätsföderation unterstützt.

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

  • E-Mails, die von Airflow gesendet werden, 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 (in die URL für externe Identitäten geändert werden).

Zugriff auf Ihre Umgebung mit Mitarbeiteridentitätsföderation einrichten

In diesem Abschnitt werden die Schritte zum Konfigurieren des Zugriffs für externe Identitäten auf Ihre Cloud Composer-Umgebung beschrieben.

Identitätsanbieter konfigurieren

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

Externen Identitäten IAM-Rollen zuweisen

Weisen Sie in Identity and Access Management IAM-Rollen für Gruppen externer Identitäten 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 Environment User and Storage Object Viewer (composer.environmentAndStorageObjectViewer) können Nutzer beispielsweise Umgebungen aufrufen, auf die Airflow-UI zugreifen, DAGs über die DAG-UI ansehen und auslösen sowie Objekte in Umgebungs-Buckets ansehen.

  • Eine Anleitung zum Zuweisen dieser Rollen zu externen Nutzern finden Sie unter Hauptkonten IAM-Rollen zuweisen.

  • Ein Format für die Darstellung externer Identitäten in IAM-Richtlinien finden Sie unter Personalpoolnutzer in IAM-Richtlinien repräsentieren.

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 Haupt-ID verwendet. Wenn eine externe Identität zum ersten Mal auf die Airflow-UI zugreift, wird ein Airflow-Nutzer automatisch im rollenbasierten Zugriffssteuerungssystem von Airflow mit der Standardrolle registriert.

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

  • Externe Identitäten erhalten die Standardrolle, nachdem sie zum ersten Mal auf die Airflow-UI zugegriffen haben. Bei Bedarf können Airflow-Administratoren diese Rolle ändern.
  • Externe Identitäten mit einer Reihe von erforderlichen Rollen vorregistrieren. Dazu fügen Sie Airflow-Nutzereinträge hinzu, bei denen die Felder für Nutzername und E-Mail-Adresse auf die Hauptkennungen festgelegt sind. Auf diese Weise erhalten externe Identitäten die Rolle, die Sie ihnen zugewiesen haben, und 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)"

In der Google Cloud Console auf die Seite „Cloud Composer“ zugreifen

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

In der Google Cloud-Konsole für die Mitarbeiteridentitätsföderation können Sie über die Seite Composer auf die UI für die Verwaltung von Umgebungen, Cloud Composer-Logs, Monitoring und 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 sind die Airflow-UI-Links möglicherweise als „Nicht verfügbar“ gekennzeichnet. Das bedeutet, 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 andere 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, ohne angemeldet zu sein, wird er zuerst zum Authentifizierungsportal weitergeleitet, wo er den Namen des Personalpoolanbieters angibt. Anschließend wird er zum Anmelden an seinen Identitätsanbieter weitergeleitet 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 Airflow-Zugriff 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 mit einer externen Identität in der Google Cloud CLI an.
  2. Führen Sie gcloud composer environments-Befehle aus.

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.

Zum Abrufen der URL des Endpunkts für externe Identitäten für Ihre Umgebung verwenden Sie den Befehl gcloud composer environments describe, wie im Abschnitt Prüfen, ob eine Umgebung die Mitarbeiteridentitätsföderation unterstützt beschrieben.

Nächste Schritte