VPC Service Controls für Dataform konfigurieren

VPC Service Controls ist eine Google Cloud-Funktion, mit der Sie einen Perimeter einrichten können, der Schutz vor Daten-Exfiltration bietet. In dieser Anleitung wird gezeigt, wie Sie VPC Service Controls mit Dataform verwenden können, um Ihre Dienste sicherer zu machen.

VPC Service Controls bietet eine zusätzliche Schutzschicht für Google Cloud-Dienste, die unabhängig vom Schutz durch die 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 Berechtigungen prüfen, die Ihren Dataform-Dienstkonten gewährt wurden, 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 unabhängig von VPC Service Controls Zugriff auf BigQuery- oder Secret Manager-Daten. In einem solchen Fall wird die Kommunikation mit BigQuery oder Secret Manager nicht durch die Einschränkung von Dataform auf einen VPC Service Controls-Perimeter blockiert.

Sie sollten die Kommunikation mit BigQuery blockieren, wenn Sie keine Workflowaufrufe ausführen müssen, die aus Ihren Dataform-Repositories stammen. 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 herstellen kann. 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 bei Verwendung von Dataform VPC Service Controls-Prüfungen erzwungen und der Zugriff von Drittanbietern auf Dataform-Git-Repositories eingeschränkt wird.

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 auf folgende Arten 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.

Wenn Sie Dataform einem Dienstperimeter hinzufügen möchten, der BigQuery einschränkt, folgen Sie der Anleitung Dienstperimeter aktualisieren in der Dokumentation zu VPC Service Controls.

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, um mit BigQuery zu kommunizieren. Die standardmäßigen Dataform-Dienstkontorollen mit dieser Berechtigung gewähren Sie, wenn Sie die Rollen gewähren, die Dataform zum Ausführen von SQL-Workflows in BigQuery erforderlich ist.

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 im Leitfaden Zugriff auf Projekte, Ordner und Organisationen verwalten.

benutzerdefinierte Dataform-Dienstkonten verwenden die folgenden Berechtigungen und Rollen, um mit BigQuery zu kommunizieren:

  • 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 wurde.

Sie haben folgende Möglichkeiten, die Kommunikation zwischen einem benutzerdefinierten Dataform-Dienstkonto und BigQuery zu blockieren:

  • Die Rolle „Ersteller von Dienstkonto-Tokens“ (roles/iam.serviceAccountTokenCreator) wird widerrufen, die dem Standarddienstkonto für das ausgewählte benutzerdefinierte Dataform-Dienstkonto gewährt wurde. Wenn Sie die Rolle „Ersteller von Dienstkonto-Tokens“ (roles/iam.serviceAccountTokenCreator) widerrufen möchten, folgen Sie der Anleitung Zugriff auf Dienstkonten verwalten.

  • Widerrufen Sie alle vordefinierten und benutzerdefinierten Rollen, die dem benutzerdefinierten Dienstkonto mit der Berechtigung bigquery.jobs.create auf Projektebene gewährt wurden. Informationen zum Widerrufen von Rollen finden Sie im Leitfaden 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 dem Dataform-Standarddienstkonto den Zugriff auf alle Secrets widerrufen.

Wenn Sie den Zugriff auf ein Secret Manager-Secret für das Dataform-Standarddienstkonto widerrufen möchten, folgen Sie der Anleitung 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 IAM-Rollen für Secret Manager enthalten:

Nächste Schritte