VPC Service Controls für Dataform konfigurieren

VPC Service Controls ist ein Google Cloud-Feature, mit dem Sie einen Perimeter einrichten können, der vor Daten-Exfiltration schützt. In diesem Leitfaden wird gezeigt, wie Sie VPC Service Controls mit Dataform verwenden, um Ihre Dienste sicherer zu machen.

VPC Service Controls bietet eine zusätzliche Schutzschicht für Google Cloud-Dienste, die unabhängig vom Schutz der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) ist.

Weitere Informationen zu VPC Service Controls finden Sie im Überblick über VPC Service Controls.

Beschränkungen

Dataform unterstützt VPC Service Controls mit den folgenden Einschränkungen:

Sicherheitsaspekte

Wenn Sie einen VPC Service Controls-Perimeter für Dataform einrichten, sollten Sie die Ihren Dataform-Dienstkonten gewährten Berechtigungen prüfen und dafür sorgen, dass sie Ihrer Sicherheitsarchitektur entsprechen.

Abhängig von den Berechtigungen, die Sie einem Dataform-Dienstkonto gewähren, hat dieses Dienstkonto möglicherweise Zugriff auf BigQuery- oder Secret Manager-Daten in dem Projekt, zu dem das Dienstkonto gehört, unabhängig von VPC Service Controls. In einem solchen Fall wird die Kommunikation mit BigQuery oder Secret Manager nicht blockiert, wenn Sie Dataform mit einem VPC Service Controls-Perimeter einschränken.

Sie sollten die Kommunikation mit BigQuery blockieren, wenn Sie keine Workflowaufrufe von Ihren Dataform-Repositories ausführen müssen. Weitere Informationen zum Blockieren der Kommunikation mit BigQuery finden Sie unter Kommunikation mit BigQuery blockieren.

Sie sollten die Kommunikation mit Secret Manager blockieren, wenn keines Ihrer Dataform-Repositories eine Verbindung zu einem Git-Repository eines Drittanbieters herstellt. Weitere Informationen zum Blockieren der Kommunikation mit Secret Manager finden Sie unter Kommunikation mit Secret Manager blockieren.

Hinweise

Bevor Sie einen VPC Service Controls-Dienstperimeter für Dataform konfigurieren, folgen Sie der Anleitung Remote-Repositories einschränken, um die Organisationsrichtlinie dataform.restrictGitRemotes festzulegen.

Die Organisationsrichtlinie dataform.restrictGitRemotes ist erforderlich, damit VPC Service Controls-Prüfungen bei der Verwendung von Dataform erzwungen und der Drittanbieterzugriff auf Dataform-Git-Repositories eingeschränkt ist.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Access Context Manager-Bearbeiter (roles/accesscontextmanager.policyEditor) für das Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren eines VPC Service Controls-Dienstperimeters benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Weitere Informationen zu VPC Service Controls-Berechtigungen finden Sie unter Zugriffssteuerung mit IAM.

VPC Service Controls konfigurieren

Sie können Dataform mit einem VPC Service Controls-Dienstperimeter einschränken:

  • Fügen Sie Dataform einem vorhandenen Dienstperimeter hinzu, der BigQuery einschränkt.
  • Erstellen Sie einen Dienstperimeter, der sowohl Dataform als auch BigQuery einschränkt.

Folgen Sie der Anleitung Dienstperimeter aktualisieren in der Dokumentation zu VPC Service Controls, um Dataform einem Dienstperimeter hinzuzufügen, der BigQuery einschränkt.

Folgen Sie der Anleitung Dienstperimeter erstellen in der Dokumentation zu VPC Service Controls, um einen neuen Dienstperimeter zu erstellen, der sowohl Dataform als auch BigQuery einschränkt.

Optional: Kommunikation mit BigQuery blockieren

Die Art und Weise, wie Dataform mit BigQuery kommuniziert, hängt vom Typ des in Dataform verwendeten Dienstkontos ab.

Das Dataform-Standarddienstkonto verwendet die Berechtigung bigquery.jobs.create für die Kommunikation mit BigQuery. Sie weisen die Dataform-Standardrollen für Dienstkonten mit dieser Berechtigung zu, wenn Sie die Rollen zuweisen, die Dataform zum Ausführen von SQL-Workflows in BigQuery erforderlich sind.

Wenn Sie die Kommunikation zwischen dem Dataform-Standarddienstkonto und BigQuery blockieren möchten, müssen Sie alle vordefinierten und benutzerdefinierten Rollen mit der Berechtigung bigquery.jobs.create widerrufen, die dem Dataform-Standarddienstkonto gewährt wurden. Informationen zum Widerrufen von Rollen finden Sie in der Anleitung Zugriff auf Projekte, Ordner und Organisationen verwalten.

Benutzerdefinierte Dataform-Dienstkonten verwenden die folgenden Berechtigungen und Rollen für die Kommunikation mit BigQuery:

  • Die Berechtigung bigquery.jobs.create für das benutzerdefinierte Dienstkonto.
  • Die Rolle „Service Account Token Creator“ (roles/iam.serviceAccountTokenCreator), die dem Dataform-Standarddienstkonto im benutzerdefinierten Dienstkonto gewährt wird.

Sie können die Kommunikation zwischen einem benutzerdefinierten Dataform-Dienstkonto und BigQuery auf eine der folgenden Arten blockieren:

  • Widerrufen Sie die Rolle „Ersteller von Dienstkonto-Tokens“ (roles/iam.serviceAccountTokenCreator), die dem Standarddienstkonto für das ausgewählte benutzerdefinierte Dataform-Dienstkonto gewährt wurde. Wie Sie die Rolle „Ersteller von Dienstkonto-Tokens“ (roles/iam.serviceAccountTokenCreator) widerrufen, erfahren Sie in der Anleitung Zugriff auf Dienstkonten verwalten.

  • Widerrufen Sie alle vordefinierten und benutzerdefinierten Rollen, die auf Projektebene erteilt wurden, für das benutzerdefinierte Dienstkonto mit der Berechtigung bigquery.jobs.create. Informationen zum Widerrufen von Rollen finden Sie in der Anleitung Zugriff auf Projekte, Ordner und Organisationen verwalten.

Die Berechtigung bigquery.jobs.create ist in den folgenden vordefinierten BigQuery-IAM-Rollen enthalten, die widerrufen werden müssen:

Optional: Kommunikation mit Secret Manager blockieren

Dataform verwendet die Berechtigung secretmanager.versions.access, um auf einzelne Secret Manager-Secrets zuzugreifen. Sie erteilen diese Berechtigung dem Dataform-Standarddienstkonto für ein ausgewähltes Secret Manager-Secret, wenn Sie ein Dataform-Repository mit einem Drittanbieter-Repository verbinden.

Wenn Sie die Kommunikation zwischen Dataform und Secret Manager blockieren möchten, müssen Sie den Zugriff auf alle Secrets über das Dataform-Standarddienstkonto widerrufen.

Wenn Sie den Zugriff auf ein Secret Manager-Secret über das Dataform-Standarddienstkonto widerrufen möchten, folgen Sie der Anleitung unter Zugriff auf Secrets verwalten in der Secret Manager-Dokumentation. Sie müssen alle vordefinierten und benutzerdefinierten Rollen mit der Berechtigung secretmanager.versions.access widerrufen, die dem Dataform-Standarddienstkonto für das ausgewählte Secret gewährt wurde.

Die Berechtigung secretmanager.versions.access ist in den folgenden vordefinierten Secret Manager-IAM-Rollen enthalten:

Nächste Schritte