VPC Service Controls konfigurieren

Managed Airflow (Gen 3) | Managed Airflow (Gen 2) | Managed Airflow (Legacy Gen 1)

Mit VPC Service Controls können Organisationen Perimeter fürGoogle Cloud -Ressourcen definieren, um das Risiko einer Daten-Exfiltration zu minimieren.

Verwaltete Airflow-Umgebungen können innerhalb eines Dienstperimeters bereitgestellt werden. Durch die Konfiguration Ihrer Umgebung mit VPC Service Controls können Sie vertrauliche Daten schützen und gleichzeitig die vollständig verwalteten Workflow-Orchestrierungsfunktionen von Managed Airflow nutzen.

Die Unterstützung von VPC Service Controls für Managed Airflow bedeutet:

  • Managed Airflow kann jetzt als sicherer Dienst innerhalb von VPC Service Controls-Perimetern ausgewählt werden.
  • Alle von Managed Airflow verwendeten unterliegenden Ressourcen sind so konfiguriert, dass sie die VPC Service Controls-Architektur unterstützen und den relevanten Regeln entsprechen.

Ihre Vorteile bei der Bereitstellung von Managed Airflow-Umgebungen mit VPC Service Controls sind:

  • Geringeres Risiko der Daten-Exfiltration.
  • Schutz vor Datenweitergabe aufgrund falsch konfigurierter Zugriffskontrollen.
  • Reduziertes Risiko, dass böswillige Nutzer Daten in nicht autorisierteGoogle Cloud -Ressourcen kopieren oder dass externe Angreifer über das Internet aufGoogle Cloud -Ressourcen zugreifen.

VPC Service Controls in Managed Airflow

  • Alle Netzwerkeinschränkungen der VPC Service Controls gelten auch für Ihre Managed Airflow-Umgebungen. Weitere Informationen finden sich in der Dokumentation zu VPC Service Controls.

Konnektivität zu Google APIs und Google-Diensten in VPC Service Controls

Bei Managed Airflow (Gen 3) wird der Traffic zu Google-Diensten über restricted.googleapis.com weitergeleitet. Dadurch ist der Zugriff auf Google-APIs, -Dienste und -Domains möglich, die von diesem Bereich unterstützt werden.

Weitere Informationen und die Liste der Dienste und Domains, die über restricted.googleapis.com verfügbar sind, finden Sie in der Dokumentation zu Virtual Private Cloud unter Netzwerkkonfiguration.

In verwalteten Airflow-Umgebungen (Gen 3) werden Aufrufe von Google-APIs, ‑Diensten und ‑Domains blockiert, die nicht in der Liste der erforderlichen APIs und Dienste enthalten sind. So rufen Sie eine API aus einem DAG auf:

  1. Prüfen Sie, ob der Dienst VPC Service Controls unterstützt.
  2. Fügen Sie den Dienst zu den eingeschränkten Diensten hinzu.
  3. Fügen Sie den Dienst zu den Diensten hinzu, die über VPC zugänglich sind.

Wenn Sie beispielsweise einen Vertex AI-Operator verwenden, fügen Sie aiplatform.googleapis.com sowohl zu eingeschränkten Diensten als auch zu über VPC zugänglichen Diensten hinzu.

Weitere Informationen zum Hinzufügen von Diensten zu einem Perimeter finden Sie in der Dokumentation zu VPC Service Controls unter Dienstperimeter verwalten.

In Managed Airflow (3. Generation) kann nicht auf Dienste zugegriffen werden, die VPC Service Controls nicht unterstützen und nicht über restricted.googleapis.com verfügbar sind, wenn sie in Umgebungen ausgeführt werden, die mit VPC Service Controls geschützt sind. Diese Einschränkung wurde in Managed Airflow (3. Generation) hinzugefügt, um die Sicherheit der Umgebung zu erhöhen. In Managed Airflow (Gen 2) kann der Zugriff auf solche nicht unterstützten Dienste konfiguriert werden. Wir empfehlen jedoch dringend, dies in einer Umgebung zu vermeiden, die durch VPC Service Controls geschützt ist.

Umgebungen in einem Perimeter erstellen

Die folgenden Schritte sind erforderlich, um Managed Airflow in einem Perimeter bereitzustellen:

  1. Aktivieren Sie die Access Context Manager API und die Managed Airflow API für Ihr Projekt. Weitere Informationen finden sich unter APIs aktivieren.

  2. Erstellen Sie einen Perimeter, indem Sie der Anleitung zur Perimeterkonfiguration in der Dokumentation zu VPC Service Controls folgen. Achten Sie darauf, dass die Liste der eingeschränkten Dienste alle von Managed Airflow verwendeten Dienste sowie andere Dienste enthält, die Sie einschränken möchten:

    • Cloud Composer API (composer.googleapis.com)
    • Artifact Registry API (artifactregistry.googleapis.com)
    • Compute Engine API (compute.googleapis.com)
    • Kubernetes Engine API (container.googleapis.com)
    • Container File System API (containerfilesystem.googleapis.com)
    • Cloud DNS API (dns.googleapis.com)
    • Service Account Credentials API (iamcredentials.googleapis.com)
    • Cloud Logging API (logging.googleapis.com)
    • Cloud Monitoring API (monitoring.googleapis.com)
    • Cloud Pub/Sub API (pubsub.googleapis.com)
    • Cloud SQL Admin API (sqladmin.googleapis.com)
    • Cloud Storage API (storage.googleapis.com)

    • Für alle anderen von Ihren DAGs verwendeten Dienste:

      1. Fügen Sie den Dienst zu den eingeschränkten Diensten hinzu.
      2. Fügen Sie den Dienst zu den Diensten hinzu, die über VPC zugänglich sind.
  3. So erstellen Sie eine neue Managed Airflow-Umgebung:

    1. Erstellen Sie die Umgebung mit der Google Cloud CLI.
    2. Aktivieren Sie die private IP-Adresse mit dem Argument --enable-private-environment.
    3. Geben Sie Zugriffsparameter für den Webserver mit den Argumenten --web-server-allow-all, --web-server-allow-ip oder --web-server-deny-all an. Weitere Informationen zur Verwendung dieser Argumente finden Sie unter Umgebungen erstellen. Zur Verbesserung des Schutzes sollten Sie den Zugriff auf den Webserver nur von bestimmten IP-Bereichen zulassen.
    4. Verhindern Sie die Installation von Paketen aus öffentlichen Internet-Repositories mit dem Argument --enable-private-builds-only.

      Beispiel:

      gcloud composer environments create example-environment \
        --location us-central1 \
        --enable-private-environment \
        --web-server-allow-all \
        --enable-private-builds-only
      
  4. Standardmäßig ist der Zugriff auf die Airflow-Benutzeroberfläche und ‑API nur innerhalb des Sicherheitsperimeters zulässig. Wenn Sie sie außerhalb des Sicherheitsperimeters verfügbar machen möchten, konfigurieren Sie Zugriffsebenen oder Regeln für eingehenden und ausgehenden Traffic.

Vorhandene Umgebung dem Perimeter hinzufügen

Sie können das Projekt, das Ihre Umgebung enthält, in einen Perimeter einfügen, wenn Ihre Umgebungen private IP-Adressen verwenden und die Installation von PyPI-Paketen aus öffentlichen Repositories deaktiviert ist.

So aktualisieren Sie eine vorhandene Managed Airflow-Umgebung (Gen 3) auf diese Konfiguration:

  1. Achten Sie darauf, dass Sie den Perimeter bereits wie im vorherigen Abschnitt beschrieben erstellt oder konfiguriert haben.
  2. Verwenden Sie die Google Cloud CLI, um Ihre Umgebung zu aktualisieren.
  3. Aktivieren Sie die private IP-Adresse mit dem Argument --enable-private-environment.
  4. Verhindern Sie die Installation von Paketen aus öffentlichen Internet-Repositories mit dem Argument --enable-private-builds-only.
  5. Konfigurieren Sie bei Bedarf den Zugriff auf den Airflow-Webserver. Für mehr Sicherheit sollten Sie den Zugriff auf den Webserver nur von bestimmten IP-Bereichen zulassen.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --enable-private-environment \
  --enable-private-builds-only

PyPI-Pakete in VPC Service Controls installieren

In der standardmäßigen VPC Service Controls-Konfiguration unterstützt Managed Airflow nur die Installation von PyPI-Paketen aus privaten Repositories, die über den internen IP-Adressbereich des VPC-Netzwerk erreichbar sind.

Alle Managed Airflow-Umgebungen innerhalb eines VPC Service Controls-Perimeters haben standardmäßig keinen Zugriff auf öffentliche PyPI-Repositories.

Aus einem privaten Repository installieren

Die empfohlene Konfiguration besteht darin, ein privates PyPI-Repository einzurichten:

  1. Füllen Sie es mit geprüften Paketen, die von Ihrer Organisation verwendet werden, und konfigurieren Sie dann Managed Airflow so, dass Python-Abhängigkeiten aus einem privaten Repository installiert werden.

Aus einem öffentlichen Repository installieren

So installieren Sie PyPI-Pakete aus einem externen Repository:

  1. Erstellen Sie ein Artifact Registry-Remote-Repository.
  2. Gewähren Sie diesem Repository Zugriff auf Upstream-Quellen.
  3. Airflow so konfigurieren, dass Pakete aus einem Artifact Registry-Repository installiert werden.

VPC Service Controls-Logs

Wenn Sie Probleme bei der Umgebungserstellung beheben möchten, können Sie die von VPC Service Controls generierten Audit-Logs analysieren.

Neben anderen Logmeldungen können Sie Logs auf Informationen zu cloud-airflow-prod@system.gserviceaccount.com- und service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com-Dienstkonten prüfen, mit denen Komponenten Ihrer Umgebungen konfiguriert werden.

Der verwaltete Airflow-Dienst verwendet das Dienstkonto cloud-airflow-prod@system.gserviceaccount.com, um Mandantenprojektkomponenten Ihrer Umgebungen zu verwalten.

Das Dienstkonto service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com, auch als Composer-Dienst-Agent-Dienstkonto bezeichnet, verwaltet Umgebungskomponenten in Dienst- und Hostprojekten.

Nächste Schritte