VPC Service Controls-Regeln freigeben
In diesem Dokument werden die Regeln für eingehenden und ausgehenden Traffic beschrieben, die Sie benötigen, damit Publisher und Abonnenten in BigQuery Sharing (früher Analytics Hub) auf Daten von Projekten mit VPC Service Controls-Perimetern zugreifen können. Es wird davon ausgegangen, dass Sie mit VPC Service Controls-Perimetern, freigegebenen Datasets, Datenpools, Listen und verknüpften Datasets vertraut sind.
Ein Aufruferprojekt ist das Netzwerk- oder Clientprojekt, das die Anfrage initiiert, z. B. eine SQL-Abfrage oder ein Google Cloud-Befehlszeilenbefehl.
Datenaustausch erstellen
Im folgenden Diagramm befinden sich die Projekte, die den Datenaustausch und das freigegbene Dataset enthalten, in verschiedenen Dienstperimetern:
Abbildung 1. VPC Service Controls-Regeln zum Erstellen eines Datenpools.
In Abbildung 1 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery Sharing-Administrator.
- Project R ist das Aufruferprojekt.
- Projekt E hostet den Datenpool und die Einträge.
Wenn Sie als BigQuery Sharing-Administrator einen Datenpool in einem anderen Projekt als dem Aufruferprojekt erstellen, müssen Sie die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R | Regel für ausgehenden Traffic für Projekt E |
| Projekt E (Datenpool) | Regel für eingehenden Traffic für Projekt R |
Eintrag erstellen
Im folgenden Diagramm befinden sich die Projekte, die den Datenaustausch und das freigegbene Dataset enthalten, in verschiedenen Dienstperimetern:
Abbildung 2. VPC Service Controls-Regeln zum Erstellen eines Eintrags.
In Abbildung 2 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery-Administrator oder Publisher.
- Project R ist das Aufruferprojekt.
- Projekt E hostet den Datenpool und die Einträge.
- Projekt S hostet das freigegebene Dataset.
Wenn Sie einen Eintrag in einem Datenpool erstellen, der sich in einem anderen Projekt als dem freigegebenen Dataset befindet, müssen Sie die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen, damit Publisher, die BigQuery-Freigabe verwenden, einen Eintrag erstellen können:
| Projekt | Regel |
|---|---|
| Projekt R |
Regel für ausgehenden Traffic für Projekt E Regel für ausgehenden Traffic für Projekt S |
| Projekt E (Datenpool) |
Regel für ausgehenden Traffic für Projekt S Regel für eingehenden Traffic für Projekt R |
| Projekt S (freigegebenes Dataset) |
Regel für ausgehenden Traffic für Projekt E Regel für eingehenden Traffic für Projekt R |
Eintrag abonnieren
Im folgenden Diagramm befinden sich die Projekte, die den Eintrag enthalten, und das verknüpfte Dataset für diese Auflistung in verschiedenen Dienstperimetern:
Abbildung 3. VPC Service Controls-Regeln zum Abonnieren eines Eintrags.
In Abbildung 3 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery Sharing-Abonnent.
- Project R ist das Aufruferprojekt.
- Projekt E hostet den Datenpool und die Einträge.
- Projekt L hostet das verknüpfte Dataset.
Wenn Sie als BigQuery-Freigabeabonnent einen Eintrag in einem Datenpool abonnieren, der sich in einem anderen Projekt als Ihrem Projekt befindet, müssen Sie die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R |
Regel für ausgehenden Traffic für Projekt E Regel für ausgehenden Traffic für Projekt L |
| Projekt E (Eintrag) |
Regel für ausgehenden Traffic für Projekt L Regel für eingehenden Traffic für Projekt R |
| Projekt L (verknüpftes Dataset) |
Regel für ausgehenden Traffic für Projekt E Regel für eingehenden Traffic für Projekt R |
Tabellen in einem verknüpften Dataset abfragen
Im folgenden Diagramm befinden sich das Aufruferprojekt und das Projekt, das das verknüpfte Dataset enthält, in unterschiedlichen Dienstperimetern:
Abbildung 4. VPC Service Controls-Regeln für die Abfrage eines verknüpften Datasets.
In Abbildung 4 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein Abonnent von BigQuery Sharing oder ein BigQuery-Jobnutzer des verknüpften Datasets.
- Project R ist das Aufruferprojekt.
- Projekt L hostet das verknüpfte Dataset.
- In Projekt V wird das freigegebene Dataset gehostet, das die Tabelle enthält.
Wenn Sie eine Tabelle im verknüpften Dataset abfragen, müssen Sie als BigQuery-Abonnent für die gemeinsame Nutzung die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R | Regel für ausgehenden Traffic für Projekt L |
| Projekt L (verknüpftes Dataset) | Regel für eingehenden Traffic für Projekt R |
Ansichten in einem verknüpften Dataset abfragen
Szenario 1
Im folgenden Diagramm befinden sich Projekte, die das verknüpfte Dataset und die mit der Ansicht verknüpften Basistabellen enthalten, in verschiedenen Dienstperimetern. Die Ansicht (Projekt S) und die mit der Ansicht verknüpfte Basistabelle (Projekt V) befinden sich in verschiedenen Projekten:
Abbildung 5. VPC Service Controls-Regeln zum Abfragen einer Ansicht in einem verknüpften Dataset.
In Abbildung 5 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery Sharing-Abonnent oder ein BigQuery-Jobnutzer des verknüpften Datasets.
- Project R ist das Aufruferprojekt.
- Projekt L hostet das verknüpfte Dataset.
- Projekt S hostet das freigegebene Dataset.
- In Projekt V wird das Dataset gehostet, das die Basistabellen enthält, die mit die Ansicht verknüpft ist.
Wenn Sie eine Ansicht im verknüpften Dataset abfragen, müssen Sie als BigQuery-Freigabeabonnent die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R |
Regel für ausgehenden Traffic für Projekt L Regel für ausgehenden Traffic für Projekt V |
| Projekt L (verknüpftes Dataset) |
Regel für eingehenden Traffic für Projekt R Regel für ausgehenden Traffic für Projekt V |
| Projekt V |
Regel für ausgehenden Traffic für Projekt L Regel für eingehenden Traffic für Projekt R |
Szenario 2
Im folgenden Diagramm befinden sich die Ansicht (Projekt V) und die mit der Ansicht verknüpfte Basistabelle (Projekt V) im selben Projekt:
Abbildung 6. VPC Service Controls-Regeln zum Abfragen einer Ansicht in einem verknüpften Dataset.
In Abbildung 6 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery Sharing-Abonnent oder ein BigQuery-Jobnutzer des verknüpften Datasets.
- Project R ist das Aufruferprojekt.
- Projekt L hostet das verknüpfte Dataset.
- Projekt V hostet sowohl die Ansicht als auch die mit der Ansicht verknüpften Basistabellen.
Wenn Sie eine Ansicht im verknüpften Dataset abfragen, müssen Sie als BigQuery-Freigabeabonnent die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R |
Regel für ausgehenden Traffic für Projekt L |
| Projekt L (verknüpftes Dataset) |
Regel für eingehenden Traffic für Projekt R |
Autorisierte Ansichten in einem verknüpften Dataset abfragen
Im folgenden Diagramm befinden sich die autorisierte Ansicht und die Basistabelle, die mit der autorisierten Ansicht (Projekt V) verknüpft ist, im selben Projekt:
Abbildung 7. VPC Service Controls-Regeln zum Abfragen einer Ansicht in einem verknüpften Dataset.
In Abbildung 7 sind die folgenden Komponenten beschriftet:
- Der Aufrufer ist ein BigQuery Sharing-Abonnent oder ein BigQuery-Jobnutzer des verknüpften Datasets.
- Project R ist das Aufruferprojekt.
- Projekt L hostet das verknüpfte Dataset.
- Projekt V hostet sowohl die autorisierte Ansicht als auch die mit der Ansicht verknüpften Basistabellen.
Wenn Sie eine Ansicht im verknüpften Dataset abfragen, müssen Sie als BigQuery-Freigabeabonnent die folgenden Regeln für eingehenden und ausgehenden Traffic hinzufügen:
| Projekt | Regel |
|---|---|
| Projekt R |
Regel für ausgehenden Traffic für Projekt L |
| Projekt L (verknüpftes Dataset) |
Regel für eingehenden Traffic für Projekt R |
Beschränkungen
BigQuery Sharing unterstützt keine methodenbasierten Regeln. Sie müssen alle Methoden zulassen, um Methoden zuzulassen. Beispiel:
ingressTo:
operations:
- methodSelectors:
- method: '*'
serviceName: analyticshub.googleapis.com
resources:
- projects/PROJECT_ID
Wenn BigQuery-Ressourcen auch durch Dienstperimeter geschützt sind, müssen auch für den BigQuery-Dienst Regeln für eingehenden und ausgehenden Traffic zulässig sein. Dies ist beim Erstellen eines Datenpools nicht erforderlich. Die Regeln für eingehenden und ausgehenden Traffic für BigQuery ähneln denen für BigQuery Sharing. Beispiel:
ingressTo:
operations:
- methodSelectors:
- method: '*'
serviceName: bigquery.googleapis.com
resources:
- projects/PROJECT_ID
Nächste Schritte
- Probleme mit VPC Service Controls beheben
- Regeln für eingehenden und ausgehenden Traffic.
- Richtlinien für eingehenden und ausgehenden Traffic konfigurieren.
- Eintrag erstellen.
- Eintrag abonnieren.
- Weitere Informationen zum Audit-Logging für die Freigabe