Zugriff mit Tags steuern
In diesem Dokument wird beschrieben, wie Sie Tags mit BigQuery-Ressourcen für die Zugriffssteuerung verwenden.
Ein Tag ist ein Schlüssel/Wert-Paar, das Sie an eine Cloud de Confiance by S3NS-Ressource anhängen können. Sie können Tags in BigQuery auf folgende Weise verwenden:
- Richtlinien bedingt gewähren oder verweigern: Sie können Tags an BigQuery-Tabellen, -Ansichten und -Datasets anhängen und Identity and Access Management (IAM) verwenden, um Rollen bedingt zu gewähren oder den Zugriff auf diese Ressourcen basierend auf ihren Tags zu verweigern (Vorabversion). Weitere Informationen zu Ablehnungsrichtlinien finden Sie unter Ablehnungsrichtlinien.
- Zugriffssteuerung auf Spaltenebene: Sie können Data Governance-Tags (Vorschau) an Tabellenspalten anhängen und mit Datenrichtlinien verwenden, um den Zugriff auf Spaltendaten einzuschränken.
Sie können Tags direkt an eine Ressource anhängen oder Tags können von übergeordneten Ressourcen in der Cloud de Confiance Ressourcenhierarchie übernommen werden.
In diesem Dokument wird beschrieben, wie Sie Tags mit IAM verwenden, um den Zugriff auf BigQuery-Tabellen, -Ansichten und -Datasets bedingt zu gewähren oder zu verweigern.
Weitere Informationen zur Verwendung von Tags in der gesamten Cloud de Confiance by S3NS-Ressourcenhierarchie finden Sie unter Tags – Übersicht.
Wenn Sie vielen zugehörigen BigQuery-Ressourcen gleichzeitig Berechtigungen gewähren möchten, einschließlich Ressourcen, die noch nicht vorhanden sind, können Sie IAM-Bedingungen verwenden.
Beschränkungen
Tabellen-Tags werden für BigQuery Omni-Tabellen, Tabellen in ausgeblendeten Datasets oder temporäre Tabellen nicht unterstützt. Dataset-Tags werden für BigQuery Omni-Datasets nicht unterstützt. Darüber hinaus verwenden regionenübergreifende Abfragen in BigQuery Omni keine Tags während der Überprüfung der Zugriffssteuerung von Tabellen in anderen Regionen.
Sie können maximal 50 Tags an eine Tabelle oder ein Dataset anhängen.
Alle Tabellen, auf die in einer Platzhalterabfrage verwiesen wird, müssen genau dieselben Tag-Schlüssel und ‑Werte haben.
Nutzer mit bedingtem Zugriff auf ein Dataset oder eine Tabelle können die Berechtigungen für diese Ressource nicht über die Cloud de Confiance Console ändern. Änderungen an Berechtigungen werden nur über das bq-Tool und die BigQuery API unterstützt.
Einige Dienste außerhalb von BigQuery können IAM-Tag-Bedingungen nicht ordnungsgemäß prüfen. Wenn die Tag-Bedingung positiv ist, also einem Nutzer nur dann eine Rolle für eine Ressource gewährt wird, wenn diese Ressource ein bestimmtes Tag hat, dann wird der Zugriff auf die Ressource verweigert, unabhängig davon, welche Tags mit ihr verbunden sind. Wenn die Tag-Bedingung negativ ist, also einem Nutzer nur dann eine Rolle für eine Ressource zugewiesen wird, wenn diese Ressource kein bestimmtes Tag hat, wird die Tag-Bedingung nicht geprüft.
Erforderliche Rollen
Sie müssen IAM-Rollen zuweisen, die Nutzern die erforderlichen Berechtigungen zum Ausführen der einzelnen Aufgaben in diesem Dokument gewähren.
Beide der folgenden vordefinierten IAM-Rollen enthalten alle erforderlichen BigQuery-Berechtigungen:
- BigQuery Dateninhaber (
roles/bigquery.dataOwner) - BigQuery Administrator (
roles/bigquery.admin)
Die Resource Manager-Berechtigungen zum Hinzufügen und Entfernen von Tags sind in der Rolle „Tag-Nutzer“ (roles/resourcemanager.tagUser) enthalten.
Erforderliche Berechtigungen
Zur Verwendung von Tags in BigQuery benötigen Sie die folgenden Berechtigungen:
| Vorgang | BigQuery-Schnittstellen (API, CLI, Console) und Terraform | Cloud Resource Manager API oder gcloud |
|---|---|---|
| Tag an eine Tabelle oder Ansicht anhängen |
|
|
| Tag aus einer Tabelle oder Ansicht entfernen |
|
|
| Tag an ein Dataset anhängen |
|
|
| Tag aus einem Dataset entfernen |
|
|
Um Tag-Schlüssel und Schlüsselwerte in der Cloud de Confiance Konsole aufzulisten, benötigen Sie die folgenden Berechtigungen:
Zum Auflisten der Tag-Schlüssel, die einer übergeordneten Organisation oder einem übergeordneten Projekt zugeordnet sind, benötigen Sie die Berechtigung
resourcemanager.tagKeys.listauf der übergeordneten Ebene des Tag-Schlüssels und die Berechtigungresourcemanager.tagKeys.getfür jeden Tag-Schlüssel. Wenn Sie die Liste der Tag-Schlüssel in der BigQuery-Konsole aufrufen möchten, klicken Sie auf den Dataset-Namen und dann auf Details bearbeiten. Alternativ können Sie auf den Namen der Tabelle oder Ansicht und dann auf Details > Details bearbeiten klicken.Zum Auflisten der Tag-Werte von Schlüsseln, die einer übergeordneten Organisation oder einem übergeordneten Projekt zugeordnet sind, benötigen Sie die Berechtigung
resourcemanager.tagValues.listfür die übergeordnete Ebene des Tag-Werts und die Berechtigungresourcemanager.tagValues.getfür jeden Tag-Wert. Wenn Sie die Liste der Tag-Schlüsselwerte in der BigQuery-Konsole aufrufen möchten, klicken Sie auf den Dataset-Namen und dann auf Details bearbeiten. Alternativ können Sie auf den Namen der Tabelle oder Ansicht und dann auf Details > Details bearbeiten klicken.
Wenn Sie Tags in der Cloud Resource Manager API oder in gcloud verwenden möchten, benötigen Sie die folgenden Berechtigungen:
- Wenn Sie die mit einer Tabelle oder Ansicht verknüpften Tags mit der Cloud Resource Manager API oder der gcloud CLI auflisten möchten, benötigen Sie die IAM-Berechtigung
bigquery.tables.listTagBindings. - Um die gültigen Tags für eine Tabelle oder Ansicht aufzulisten, benötigen Sie die IAM-Berechtigung
bigquery.tables.listEffectiveTags. - Zum Auflisten der an ein Dataset angehängten Tags mit der Cloud Resource Manager API oder der gcloud CLI benötigen Sie die IAM-Berechtigung
bigquery.datasets.listTagBindings. - Um die gültigen Tags für ein Dataset aufzulisten, benötigen Sie die IAM-Berechtigung
bigquery.datasets.listEffectiveTags.
Tag-Schlüssel und -Werte erstellen
Sie können ein Tag erstellen, bevor Sie es an eine BigQuery-Ressource anhängen, oder Sie können ein Tag manuell erstellen, wenn Sie die Ressource mit derCloud de Confiance -Konsole erstellen.
Informationen zum Erstellen von Tag-Schlüsseln und -Werten finden Sie in der Resource Manager-Dokumentation unter Tag erstellen und Tag-Werte hinzufügen.
Datasets mit Tags kennzeichnen
In den folgenden Abschnitten wird beschrieben, wie Sie Tags an neue und vorhandene Datasets anhängen, Tags auflisten, die an ein Dataset angehängt sind, und Tags von einem Dataset trennen.
Tags beim Erstellen eines neuen Datasets anhängen
Nachdem Sie ein Tag erstellt haben, können Sie es an ein neues BigQuery-Dataset anhängen. Sie können pro Dataset nur einen Tag-Wert für einen bestimmten Tag-Schlüssel anhängen. Sie können maximal 50 Tags an ein Dataset anhängen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Wenn der linke Bereich nicht angezeigt wird, klicken Sie auf Linken Bereich maximieren, um ihn zu öffnen.
Wählen Sie im Bereich Explorer das Projekt aus, in dem Sie das Dataset erstellen möchten.
Klicken Sie auf Aktionen ansehen > Dataset erstellen.
Geben Sie die Informationen für das neue Dataset ein. Weitere Informationen finden Sie unter Datasets erstellen.
Maximieren Sie den Bereich Tags.
So wenden Sie ein vorhandenes Tag an:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie Aktueller Bereich – Aktuelle Organisation auswählen oder Aktuelles Projekt auswählen aus.
Alternativ können Sie auf Bereich auswählen klicken, um nach einer Ressource zu suchen oder eine Liste der aktuellen Ressourcen aufzurufen.
Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
So geben Sie ein neues Tag manuell ein:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie IDs manuell eingeben > Organisation, Projekt oder Tags aus.
Wenn Sie ein Tag für Ihr Projekt oder Ihre Organisation erstellen, geben Sie im Dialogfeld die
PROJECT_IDoder dieORGANIZATION_IDein und klicken Sie dann auf Speichern.Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
Optional: Wenn Sie der Tabelle weitere Tags hinzufügen möchten, klicken Sie auf Tag hinzufügen und folgen Sie der Anleitung oben.
Klicken Sie auf Dataset erstellen.
SQL
Verwenden Sie die Anweisung CREATE SCHEMA.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
CREATE SCHEMA PROJECT_ID.DATASET_ID OPTIONS ( tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des zu erstellenden Datasets.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für das Dataset festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Wert des Tags, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Führen Sie den Befehl bq mk --dataset mit dem Flag --add_tags aus:
bq mk --dataset \ --add_tags=TAG \ PROJECT_ID:DATASET_ID
Ersetzen Sie Folgendes:
TAG: das Tag, das Sie an das neue Dataset anhängen. Mehrere Tags werden durch Kommas getrennt. Beispiel:556741164180/env:prod,myProject/department:salesJedes Tag muss den Parameter Kurzname des Namespace-Schlüssels und des Namespace haben.PROJECT_ID: die ID des Projekts, in dem Sie ein Dataset erstellen.DATASET_ID: die ID des neuen Datasets.
Terraform
Verwenden Sie die Ressource google_bigquery_dataset:
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird ein Dataset mit dem Namen my_dataset erstellt und dann mit Tags versehen, indem das Feld resource_tags ausgefüllt wird:
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Standardprojekt Cloud de Confiance fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Rufen Sie die Methode datasets.insert auf und fügen Sie Ihre Tags in das Feld resource_tags ein.
Tags an ein vorhandenes Dataset anhängen
Nachdem Sie ein Tag erstellt haben, können Sie es an ein vorhandenes Dataset anhängen. Sie können pro Dataset nur einen Tag-Wert für einen bestimmten Tag-Schlüssel anhängen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt, klicken Sie auf Datasets und wählen Sie dann ein Dataset aus.
Klicken Sie im Abschnitt Dataset-Informationen auf Details bearbeiten.
Maximieren Sie den Bereich Tags.
So wenden Sie ein vorhandenes Tag an:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie Aktueller Bereich – Aktuelle Organisation auswählen oder Aktuelles Projekt auswählen aus.
Alternativ können Sie auf Bereich auswählen klicken, um nach einer Ressource zu suchen oder eine Liste der aktuellen Ressourcen aufzurufen.
Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
So geben Sie ein neues Tag manuell ein:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie IDs manuell eingeben > Organisation, Projekt oder Tags aus.
Wenn Sie ein Tag für Ihr Projekt oder Ihre Organisation erstellen, geben Sie im Dialogfeld die
PROJECT_IDoder dieORGANIZATION_IDein und klicken Sie dann auf Speichern.Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
Optional: Wenn Sie der Tabelle weitere Tags hinzufügen möchten, klicken Sie auf Tag hinzufügen und folgen Sie den vorherigen Schritten.
Klicken Sie auf Speichern.
SQL
Verwenden Sie die Anweisung ALTER SCHEMA SET OPTIONS.
Im folgenden Beispiel werden alle Tags für ein vorhandenes Dataset überschrieben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER SCHEMA PROJECT_ID.DATASET_ID SET OPTIONS ( tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, die Sie taggen.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für die Tabelle festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Wert des Tags, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
Im folgenden Beispiel wird der Operator += verwendet, um einem Dataset Tags zuzuweisen, ohne vorhandene Tags zu überschreiben. Wenn ein vorhandenes Tag denselben Schlüssel hat, wird dieses Tag überschrieben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER SCHEMA PROJECT_ID.DATASET_ID SET OPTIONS ( tags += [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, die Sie taggen.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für die Tabelle festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Wert des Tags, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Führen Sie den Befehl bq update mit dem Flag --add_tags aus:
bq update \ --add_tags=TAG \ PROJECT_ID:DATASET_ID
Ersetzen Sie Folgendes:
TAG: Das Tag, das Sie dem Dataset zuweisen. Mehrere Tags werden durch Kommas getrennt. Beispiel:556741164180/env:prod,myProject/department:salesJedes Tag muss den Parameter Kurzname des Namespace-Schlüssels und des Namespace haben.PROJECT_ID: die ID des Projekts, in dem sich das vorhandene Dataset befindet.DATASET_ID: die ID des vorhandenen Datasets.
gcloud
Zum Anhängen eines Tags an ein Dataset über die Befehlszeile erstellen Sie mit dem Befehl gcloud resource-manager tags bindings create eine Tag-Bindungsressource:
gcloud resource-manager tags bindings create \
--tag-value=TAG_VALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
TAG_VALUE_NAME: die permanente ID oder der Namespace-Name des Tag-Werts, der angehängt werden soll, z. B.tagValues/4567890123oder1234567/my_tag_key/my_tag_valueRESOURCE_ID: die vollständige ID des Datasets, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren. Beispiel://bigquery.googleapis.com/projects/my_project/datasets/my_datasetLOCATION: der Standort Ihres Datasets.
Terraform
Fügen Sie dem Feld resource_tags des Datasets Tags hinzu und wenden Sie dann die aktualisierte Konfiguration mit der Ressource google_bigquery_dataset an. Weitere Informationen finden Sie im Terraform-Beispiel unter Tags beim Erstellen eines neuen Datasets anhängen.
API
Rufen Sie die Methode datasets.get auf, um die Dataset-Ressource einschließlich des Felds resource_tags abzurufen. Fügen Sie Ihre Tags dem Feld resource_tags hinzu und übergeben Sie die aktualisierte Dataset-Ressource mit der Methode datasets.update zurück.
Tags auflisten, die an ein Dataset angehängt sind
Die folgenden Schritte enthalten eine Liste von Tag-Bindungen, die direkt mit einem Dataset verknüpft sind. Bei diesen Methoden werden keine Tags zurückgegeben, die von übergeordneten Ressourcen übernommen werden.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt, klicken Sie auf Datasets und wählen Sie dann ein Dataset aus.
Die Tags werden im Bereich Dataset-Informationen angezeigt.
bq
Verwenden Sie den Befehl bq show, um Tags aufzulisten, die an ein Dataset angehängt sind.
bq show PROJECT_ID:DATASET_ID
Ersetzen Sie Folgendes:
PROJECT_ID: die ID des Projekts, das Ihr Dataset enthält.DATASET_ID: die ID des Datasets, für das Sie die Tags auflisten möchten.
gcloud
Verwenden Sie den Befehl gcloud resource-manager tags bindings list, um eine Liste der Tag-Bindungen abzurufen, die an eine Ressource angehängt sind:
gcloud resource-manager tags bindings list \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
RESOURCE_ID: die vollständige ID des Datasets, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren, z. B.//bigquery.googleapis.com/projects/my_project/datasets/my_datasetLOCATION: der Standort Ihres Datasets
Die Ausgabe sieht etwa so aus:
name: tagBindings/%2F%2Fbigquery.googleapis.com%2Fprojects%2Fmy_project%2Fdatasets%2Fmy_dataset/tagValues/4567890123 parent: //bigquery.googleapis.com/projects/my_project/datasets/my_dataset tagValue: tagValues/4567890123
Sie können die von BigQuery-Datasets übernommenen Tags mit gcloud resource-manager tags bindings list auflisten. Sie können auch die Option --filter für das Attribut namespacedTagValue verwenden, um Tags nach Projekt-ID, Tag-Wert oder Tag-Schlüssel zu filtern.
gcloud resource-manager tags bindings list \
--parent=//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID \
--effective \
--filter=namespacedTagValue:TAG_FILTER
Ersetzen Sie Folgendes :
PROJECT_ID: die ID des Projekts, das Ihr Dataset enthält.DATASET_ID: Die ID des Datasets.TAG_FILTER: Geben Sie einen Wert an, um nach übernommenen Tags zu filtern. Verwenden Sie dazu eine der folgenden Optionen:Nach Tags nach Projekt-ID filtern. Beispiel:
myproject.Filtern Sie nach Tag-Werten, indem Sie die permanente ID oder den Namespace-Namen des Tag-Werts angeben. Beispiel:
tagValues/4567890123oder1234567/my_tag_key/my_tag_value.Filtern Sie nach Tag-Schlüsseln, indem Sie den Anzeigenamen für den Tag-Schlüssel angeben. Beispiel:
tagkey
Terraform
Verwenden Sie den Befehl terraform state show, um die Attribute des Datasets aufzulisten, einschließlich des Felds resource_tags. Führen Sie diesen Befehl in dem Verzeichnis aus, in dem die Terraform-Konfigurationsdatei des Datasets ausgeführt wurde.
terraform state show google_bigquery_dataset.default
API
Rufen Sie die Methode datasets.get auf, um die Dataset-Ressource abzurufen. Die Dataset-Ressource enthält Tags, die dem Dataset im Feld resource_tags zugeordnet sind.
Aufrufe
Wählen Sie das Dropdown-Menü
INFORMATION_SCHEMA.SCHEMATA_OPTIONS Ansicht aus:
Die folgende Abfrage zeigt beispielsweise alle Tags, die allen Datasets in einer Region zugewiesen sind. Diese Abfrage gibt eine Tabelle mit Spalten zurück, wie schema_name (die Dataset-Namen), option_name (immer 'tags'), object_type (immer ARRAY<STRUCT<STRING, STRING>>) und option_value, das Arrays von STRUCT-Objekten enthält, die Tags darstellen, die mit jedem Dataset verknüpft sind. Für Datasets ohne zugewiesene Tags gibt die Spalte option_value ein leeres Array zurück.
SELECT * from region-REGION.INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name='tags'
Ersetzen Sie Folgendes:
REGION: die Region, in der sich Ihre Datasets befinden.
Tags von einem Dataset trennen
Sie können ein Tag von einer Ressource trennen, indem Sie die Tag-Bindungsressource löschen. Wenn Sie ein Tag löschen, müssen Sie es zuerst vom Dataset trennen. Weitere Informationen finden Sie unter Tags löschen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt, klicken Sie auf Datasets und wählen Sie dann ein Dataset aus.
Klicken Sie im Abschnitt Dataset-Informationen auf Details bearbeiten.
Klicken Sie im Bereich Tags neben dem Tag, das Sie löschen möchten, auf Element löschen.
Klicken Sie auf Speichern.
SQL
Verwenden Sie die Anweisung ALTER SCHEMA SET OPTIONS.
Im folgenden Beispiel werden Tags mithilfe des Operators -= von einem Dataset getrennt. Wenn Sie alle Tags von einem Dataset trennen möchten, können Sie tags=NULL oder tags=[] angeben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID SET OPTIONS ( tags -= [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, aus der Sie die Tags entfernen.TAG_KEY_1: der Namespace-Schlüsselname des ersten Tags, das Sie trennen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: Der Kurzname des Werts für das Tag, das Sie trennen möchten, z. B.'prod'oder'sales'.TAG_KEY_2: der Namespace-Schlüsselname für das zweite Tag, das Sie trennen.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags, das Sie trennen.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Führen Sie den Befehl bq update mit dem Flag --remove_tags aus:
bq update \ --remove_tags=REMOVED_TAG \ PROJECT_ID:DATASET_ID
Ersetzen Sie Folgendes:
REMOVED_TAG: das Tag, das Sie aus dem Dataset entfernen. Mehrere Tags werden durch Kommas getrennt. Akzeptiert nur Schlüssel ohne Wertepaare. Beispiel:556741164180/env,myProject/department. Jeder Tag muss den Namespace-Schlüsselnamen haben.PROJECT_ID: Die ID des Projekts, das Ihr Dataset enthält.DATASET_ID: die ID des Datasets, aus dem Tags getrennt werden sollen.
Wenn Sie alle Tags aus einem Dataset entfernen möchten, verwenden Sie alternativ den Befehl bq update mit dem Flag --clear_all_tags:
bq update \ --clear_all_tags PROJECT_ID:DATASET_ID
gcloud
Zum Trennen eines Tags von einem Dataset über die Befehlszeile löschen Sie die Tag-Bindung mit dem Befehl gcloud resource-manager tags bindings delete:
gcloud resource-manager tags bindings delete \
--tag-value=TAG_VALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
TAG_VALUE_NAME: die permanente ID oder der Namespace-Name des Tag-Werts, der angehängt werden soll, z. B.tagValues/4567890123oder1234567/my_tag_key/my_tag_valueRESOURCE_ID: die vollständige ID des Datasets, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren, z. B.//bigquery.googleapis.com/projects/my_project/datasets/my_datasetLOCATION: der Standort Ihres Datasets
Terraform
Entfernen Sie die Tags aus dem Feld resource_tags des Datasets und wenden Sie dann die aktualisierte Konfiguration mit der Ressource google_bigquery_dataset an.
API
Rufen Sie die Methode datasets.get auf, um die Dataset-Ressource einschließlich des Felds resource_tags abzurufen. Entfernen Sie Ihre Tags aus dem Feld resource_tags und übergeben Sie die aktualisierte Dataset-Ressource mit der Methode datasets.update zurück.
Tag-Tabellen
In den folgenden Abschnitten wird beschrieben, wie Sie Tags an neue und vorhandene Tabellen anhängen, an eine Tabelle angehängte Tags auflisten und Tags von einer Tabelle trennen.
Tags beim Erstellen einer neuen Tabelle anhängen
Nachdem Sie ein Tag erstellt haben, können Sie es an eine neue Tabelle anhängen. Sie können pro Tabelle nur einen Tag-Wert für einen bestimmten Tag-Schlüssel anhängen. Sie können maximal 50 Tags an ein Dataset anhängen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt, klicken Sie auf Datasets und wählen Sie dann ein Dataset aus.
Klicken Sie im Abschnitt Dataset-Informationen auf Tabelle erstellen.
Geben Sie die Informationen für die neue Tabelle ein. Weitere Informationen finden Sie unter Tabellen erstellen und verwenden.
Maximieren Sie den Bereich Tags.
So wenden Sie ein vorhandenes Tag an:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie Aktueller Bereich – Aktuelle Organisation auswählen oder Aktuelles Projekt auswählen aus.
Alternativ können Sie auf Bereich auswählen klicken, um nach einer Ressource zu suchen oder eine Liste der aktuellen Ressourcen aufzurufen.
Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
So geben Sie ein neues Tag manuell ein:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie IDs manuell eingeben > Organisation, Projekt oder Tags aus.
Wenn Sie ein Tag für Ihr Projekt oder Ihre Organisation erstellen, geben Sie im Dialogfeld die
PROJECT_IDoder dieORGANIZATION_IDein und klicken Sie dann auf Speichern.Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
Optional: Wenn Sie der Tabelle weitere Tags hinzufügen möchten, klicken Sie auf Tag hinzufügen und folgen Sie der Anleitung oben.
Klicken Sie auf Tabelle erstellen.
SQL
Verwenden Sie die Anweisung CREATE TABLE.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
CREATE TABLE PROJECT_ID.DATASET_ID.TABLE_ID OPTIONS ( tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, in dem Sie die Tabelle erstellen.TABLE_IDist der Name der neuen Tabelle.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für die Tabelle festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Tag-Wert, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Führen Sie den Befehl bq mk --table mit dem Flag --add_tags aus:
bq mk --table \ --schema=SCHEMA \ --add_tags=TAG \ PROJECT_ID:DATASET_ID.TABLE_ID
Ersetzen Sie Folgendes:
SCHEMA: Die Inline-Schemadefinition.TAG: das Tag, das Sie an die neue Tabelle anhängen. Mehrere Tags werden durch Kommas getrennt. Beispiel:556741164180/env:prod,myProject/department:salesJedes Tag muss den Parameter Kurzname des Namespace-Schlüssels und des Namespace haben.PROJECT_ID: die ID des Projekts, in dem Sie eine Tabelle erstellen.DATASET_ID: der Name des Datasets, in dem Sie eine Tabelle erstellen.TABLE_ID: Die ID der neuen Tabelle.
Terraform
Verwenden Sie die Ressource google_bigquery_table:
Richten Sie zur Authentifizierung bei BigQuery die Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird eine Tabelle mit dem Namen mytable erstellt und dann mit Tags versehen, indem das Feld resource_tags ausgefüllt wird:
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Standardprojekt Cloud de Confiance fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance -Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Rufen Sie die Methode tables.insert mit einer definierten Tabellenressource auf und fügen Sie die Tags in das Feld resource_tags ein.
Tags an eine vorhandene Tabelle anhängen
Nachdem Sie ein Tag erstellt haben, können Sie es an eine vorhandene Tabelle anhängen. Sie können pro Tabelle nur einen Tag-Wert für einen bestimmten Tag-Schlüssel anhängen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt und klicken Sie dann auf Datasets.
Klicken Sie auf Übersicht > Tabellen und wählen Sie dann eine Tabelle aus.
Klicken Sie auf den Tab Details und dann auf Details bearbeiten.
Maximieren Sie den Bereich Tags.
So wenden Sie ein vorhandenes Tag an:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie Aktueller Bereich – Aktuelle Organisation auswählen oder Aktuelles Projekt auswählen aus.
Alternativ können Sie auf Bereich auswählen klicken, um nach einer Ressource zu suchen oder eine Liste der aktuellen Ressourcen aufzurufen.
Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
So geben Sie ein neues Tag manuell ein:
Klicken Sie auf den Drop-down-Pfeil neben Bereich auswählen und wählen Sie IDs manuell eingeben > Organisation, Projekt oder Tags aus.
Wenn Sie ein Tag für Ihr Projekt oder Ihre Organisation erstellen, geben Sie im Dialogfeld die
PROJECT_IDoder dieORGANIZATION_IDein und klicken Sie dann auf Speichern.Wählen Sie für Schlüssel 1 und Wert 1 die entsprechenden Werte aus den Listen aus.
Optional: Wenn Sie der Tabelle weitere Tags hinzufügen möchten, klicken Sie auf Tag hinzufügen und folgen Sie den vorherigen Schritten.
Klicken Sie auf Speichern.
SQL
Verwenden Sie die Anweisung ALTER TABLE SET OPTIONS.
Im folgenden Beispiel werden alle Tags für eine vorhandene Tabelle überschrieben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID SET OPTIONS ( tags = [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, die Sie taggen.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für die Tabelle festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Tag-Wert, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
Im folgenden Beispiel wird der Operator += verwendet, um einer Tabelle ein Tag zuzuweisen, ohne vorhandene Tags zu überschreiben. Wenn ein vorhandenes Tag denselben Schlüssel hat, wird es überschrieben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID SET OPTIONS ( tags += [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, die Sie taggen.TAG_KEY_1: der Namespace-Schlüsselname, den Sie als erstes Tag für die Tabelle festlegen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: der Kurzname für den Wert des Tags, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Führen Sie den Befehl bq update mit dem Flag --add_tags aus:
bq update \ --add_tags=TAG \ PROJECT_ID:DATASET_ID.TABLE_ID
Ersetzen Sie Folgendes:
TAG: das Tag, das Sie an die Tabelle anhängen. Mehrere Tags werden durch Kommas getrennt. Beispiel:556741164180/env:prod,myProject/department:salesJedes Tag muss den Parameter Kurzname des Namespace-Schlüssels und des Namespace haben.PROJECT_ID: Die ID des Projekts, das Ihre Tabelle enthält.DATASET_ID: die ID des Datasets, das Ihre Tabelle enthält.TABLE_ID: Die ID der Tabelle, die Sie aktualisieren.
gcloud
Zum Anhängen eines Tags an ein Dataset über die Befehlszeile erstellen Sie mit dem Befehl gcloud resource-manager tags bindings create eine Tag-Bindungsressource:
gcloud resource-manager tags bindings create \
--tag-value=TAG_VALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
TAG_VALUE_NAME: die permanente ID oder der Namespace-Name des Tag-Werts, der angehängt werden soll, z. B.tagValues/4567890123oder1234567/my_tag_key/my_tag_valueRESOURCE_ID: die vollständige ID des Datasets, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren, z. B.//bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_tableLOCATION: der Standort Ihrer Tabelle.
Terraform
Fügen Sie dem Feld resource_tags der Tabelle Tags hinzu und wenden Sie dann die aktualisierte Konfiguration mit der Ressource google_bigquery_table an. Weitere Informationen finden Sie im Terraform-Beispiel unter Tags beim Erstellen einer neuen Tabelle anhängen.
API
Rufen Sie die Methode tables.update mit einer definierten Tabellenressource auf und fügen Sie die Tags in das Feld resource_tags ein.
An eine Tabelle angehängte Tags auflisten
Sie können die Tags auflisten, die direkt an eine Tabelle angehängt sind. Bei diesem Vorgang werden die Tags, die von übergeordneten Ressourcen übernommen werden, nicht aufgelistet.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt und klicken Sie dann auf Datasets.
Klicken Sie auf Übersicht > Tabellen und wählen Sie eine Tabelle aus.
Die Tags werden auf dem Tab Details angezeigt.
bq
Verwenden Sie den Befehl bq show und suchen Sie nach der Spalte tags. Wenn die Tabelle keine Tags enthält, wird die Spalte tags nicht angezeigt.
bq show \ PROJECT_ID:DATASET_ID.TABLE_ID
Ersetzen Sie Folgendes:
PROJECT_ID: Die ID des Projekts, das Ihre Tabelle enthält.DATASET_ID: die ID des Datasets, das Ihre Tabelle enthält.TABLE_ID: Die ID Ihrer Tabelle
gcloud
Verwenden Sie den Befehl gcloud resource-manager tags bindings list, um eine Liste der Tag-Bindungen abzurufen, die an eine Ressource angehängt sind:
gcloud resource-manager tags bindings list \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
RESOURCE_ID: die vollständige ID der Tabelle, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren, z. B.//bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_tableLOCATION: der Standort Ihres Datasets
Die Ausgabe sieht etwa so aus:
name: tagBindings/%2F%2Fbigquery.googleapis.com%2Fprojects%2Fmy_project%2Fdatasets%2Fmy_dataset/tagValues/4567890123 parent: //bigquery.googleapis.com/projects/my_project/datasets/my_dataset tagValue: tagValues/4567890123
Sie können die geerbten Tags nach BigQuery-Tabellen mit der gcloud resource-manager tags bindings list auflisten. Sie können auch die Option --filter für das Attribut namespacedTagValue verwenden, um Tags nach Projekt-ID, Tag-Wert oder Tag-Schlüssel zu filtern.
gcloud resource-manager tags bindings list \
--parent=//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID \
--effective \
--filter=namespacedTagValue:TAG_FILTER
Ersetzen Sie Folgendes :
PROJECT_ID: die ID des Projekts, das Ihr Dataset enthält.DATASET_ID: Die ID des Datasets.TAG_FILTER: Geben Sie einen Wert an, um nach übernommenen Tags zu filtern. Verwenden Sie dazu eine der folgenden Optionen:Nach Tags nach Projekt-ID filtern. Beispiel:
myproject.Filtern Sie nach Tag-Werten, indem Sie die permanente ID oder den Namespace-Namen des Tag-Werts angeben. Beispiel:
tagValues/4567890123oder1234567/my_tag_key/my_tag_value.Filtern Sie nach Tag-Schlüsseln, indem Sie den Anzeigenamen für den Tag-Schlüssel angeben. Beispiel:
tagkey
Terraform
Verwenden Sie den Befehl terraform state show, um die Attribute der Tabelle aufzulisten, einschließlich des Felds resource_tags. Führen Sie diesen Befehl in dem Verzeichnis aus, in dem die Terraform-Konfigurationsdatei der Tabelle ausgeführt wurde.
terraform state show google_bigquery_table.default
API
Rufen Sie die Methode tables.get mit einer definierten Tabellenressource auf und suchen Sie nach dem Feld resource_tags.
Aufrufe
Wählen Sie das Dropdown-Menü
INFORMATION_SCHEMA.TABLE_OPTIONS Ansicht aus:
Die folgende Abfrage zeigt beispielsweise alle Tags, die allen Tabellen in einem Dataset zugewiesen sind. Diese Abfrage gibt eine Tabelle mit Spalten zurück, wie schema_name (der Dataset-Name), option_name (immer 'tags'), object_type (immer ARRAY<STRUCT<STRING, STRING>>) und option_value, das Arrays von STRUCT-Objekten enthält, die Tags darstellen, die mit jedem Dataset verknüpft sind. Für Tabellen ohne zugewiesene Tags gibt die Spalte option_value ein leeres Array zurück.
SELECT * from DATASET_ID.INFORMATION_SCHEMA.TABLE_OPTIONS WHERE option_name='tags'
Ersetzen Sie DATASET_ID durch die ID des Datasets, das Ihre Tabelle enthält.
Tags von einer Tabelle trennen
Sie können eine Tag-Zuordnung aus einer Tabelle entfernen, indem Sie die Tag-Bindung löschen. Wenn Sie ein Tag löschen, müssen Sie es zuerst von der Tabelle trennen. Weitere Informationen finden Sie unter Tags löschen.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Explorer:

Maximieren Sie im Bereich Explorer Ihr Projekt und klicken Sie dann auf Datasets.
Klicken Sie auf Übersicht > Tabellen und wählen Sie dann eine Tabelle aus.
Klicken Sie auf den Tab Details und dann auf Details bearbeiten.
Klicken Sie im Bereich Tags neben dem Tag, das Sie löschen möchten, auf Element löschen.
Klicken Sie auf Speichern.
SQL
Verwenden Sie die Anweisung ALTER TABLE SET OPTIONS.
Im folgenden Beispiel werden Tags mithilfe des Operators -= von einer Tabelle getrennt. Wenn Sie alle Tags aus einer Tabelle entfernen möchten, können Sie tags=NULL oder tags=[] angeben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID SET OPTIONS ( tags -= [('TAG_KEY_1', 'TAG_VALUE_1'), ('TAG_KEY_2', 'TAG_VALUE_2')];)
Dabei gilt:
PROJECT_ID: Ihre Projekt-ID.DATASET_ID: die ID des Datasets, das die Tabelle enthält.TABLE_ID: der Name der Tabelle, aus der Sie die Tags entfernen.TAG_KEY_1: der Namespace-Schlüsselname des ersten Tags, das Sie trennen möchten, z. B.'my-project/env'oder'556741164180/department'.TAG_VALUE_1: Der Kurzname des Werts für das Tag, das Sie trennen möchten, z. B.'prod'oder'sales'.TAG_KEY_2: Der Namespace-Schlüsselname für das zweite Tag, das Sie trennen.TAG_VALUE_2: Der Kurzname für den Wert des zweiten Tags, das Sie trennen.
Klicken Sie auf Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfrage ausführen.
bq
Verwenden Sie zum Entfernen einiger Tags aus einer Tabelle den Befehl bq update mit dem Flag --remove_tags:
bq update \ --remove_tags=TAG_KEYS \ PROJECT_ID:DATASET_ID.TABLE_ID
Ersetzen Sie Folgendes:
TAG_KEYS: die Tag-Schlüssel, die Sie aus der Tabelle trennen, durch Kommas getrennt. Beispiel:556741164180/env,myProject/departmentJeder Tag-Schlüssel muss den Namespace-Schlüsselnamen haben.PROJECT_ID: Die ID des Projekts, das Ihre Tabelle enthält.DATASET_ID: die ID des Datasets, das Ihre Tabelle enthält.TABLE_ID: Die ID der Tabelle, die Sie aktualisieren.
Verwenden Sie zum Entfernen aller Tags aus einer Tabelle den Befehl bq update mit dem Flag --clear_all_tags:
bq update \ --clear_all_tags \ PROJECT_ID:DATASET_ID.TABLE_ID
gcloud
Zum Entfernen einer Tag-Verknüpfung aus einer Tabelle über die Befehlszeile löschen Sie die Tag-Bindung mit dem Befehl gcloud resource-manager tags bindings delete:
gcloud resource-manager tags bindings delete \
--tag-value=TAG_VALUE_NAME \
--parent=RESOURCE_ID \
--location=LOCATION
Ersetzen Sie Folgendes:
TAG_VALUE_NAME: die permanente ID oder der Namespace-Name des Tag-Werts, der angehängt werden soll, z. B.tagValues/4567890123oder1234567/my_tag_key/my_tag_valueRESOURCE_ID: die vollständige ID der Tabelle, einschließlich des API-Domainnamens (//bigquery.googleapis.com/), um den Ressourcentyp zu identifizieren, z. B.//bigquery.googleapis.com/projects/my_project/datasets/my_dataset/tables/my_tableLOCATION: der Standort Ihres Datasets
Terraform
Entfernen Sie Ihre Tags aus dem Feld resource_tags der Tabelle und wenden Sie dann die aktualisierte Konfiguration mit der Ressource google_bigquery_table an.
API
Rufen Sie die Methode tables.update mit einer definierten Tabellenressource auf und entfernen Sie die Tags im Feld resource_tags. Wenn Sie alle Tags entfernen möchten, entfernen Sie das Feld resource_tags.
Andere tabellenähnliche Ressourcen taggen
Sie können BigQuery-Ansichten, materialisierte Ansichten, Klone und Snapshots auf ähnliche Weise taggen.
Spalten taggen
Sie können Tabellenspalten mit Data Governance-Tags für die Zugriffssteuerung auf Spaltenebene und die Datenmaskierung taggen.
Tags löschen
Sie können ein Tag nicht löschen, wenn von einer Tabelle, Ansicht oder einem Dataset darauf verwiesen wird. Sie sollten alle vorhandenen Tag-Bindungsressourcen trennen, bevor Sie den Tag-Schlüssel oder -Wert selbst löschen. Informationen zum Löschen von Tag-Schlüsseln und Tag-Werten finden Sie unter Tags löschen.
Beispiel
Angenommen, Sie sind Administrator einer Organisation. Ihre Datenanalysten sind alle Mitglieder der Gruppe analysts@example.com, die die IAM-Rolle „BigQuery-Datenbetrachter“ für das Projekt userData haben. Es wird ein Datenanalysten-Praktikant eingestellt, der gemäß den Unternehmensrichtlinien nur die Berechtigung haben soll, das Dataset anonymousData im Projekt userData einzusehen.
Sie können den Zugriff mithilfe von Tags steuern.
Erstellen Sie ein Tag mit dem Schlüssel
employee_typeund dem Wertintern:
Rufen Sie in der Cloud de Confiance Console die Seite IAM auf.
Suchen Sie die Zeile mit dem Praktikanten, dessen Dataset-Zugriff Sie einschränken möchten, und klicken Sie in dieser Zeile auf Hauptkonto bearbeiten.
Wählen Sie im Menü Rolle die Option BigQuery-Datenbetrachter aus.
Klicken Sie auf Bedingung hinzufügen.
Geben Sie in den Feldern Titel und Beschreibung Werte ein, die die zu erstellende IAM-Tag-Bedingung beschreiben.
Klicken Sie auf dem Tab Tool zur Bedingungserstellung auf Hinzufügen.
Wählen Sie im Menü Bedingungstyp die Option Ressource und dann Tag aus.
Wählen Sie im Menü Operator die Option hat einen Wert aus.
Geben Sie im Feld Wertpfad den Tagwertpfad im Format
ORGANIZATION/TAG_KEY/TAG_VALUEein, z. B.example.org/employee_type/intern.
Diese IAM-Tag-Bedingung beschränkt den Zugriff des Praktikanten auf Datasets mit dem Tag
intern.Klicken Sie auf Speichern, um die Tag-Bedingung zu speichern.
Klicken Sie auf Speichern, um alle Änderungen zu speichern, die Sie im Bereich Berechtigungen bearbeiten vorgenommen haben.
Führen Sie mithilfe der Befehlszeile den Befehl
gcloud resource-manager tags bindings createaus, um den Tag-Wertinternan das DatasetanonymousDataanzuhängen. Beispiel:gcloud resource-manager tags bindings create \ --tag-value=tagValues/4567890123 \ --parent=//bigquery.googleapis.com/projects/userData/datasets/anonymousData \ --location=US
Zugriff auf Spalten mit Data-Governance-Tags steuern
Sie können Sicherheit auf Spaltenebene und Datenmaskierung in BigQuery mithilfe von Data-Governance-Tags erzwingen. Data-Governance-Tags sind eine Art von Resource Manager-Tag, das Sie an vertrauliche Spalten anhängen und in BigQuery-Datenschutzrichtlinien verwenden können, um Ihren Nutzern bedingten Zugriff zu gewähren.
Sie können die Sicherheit auf Spaltenebene konfigurieren, indem Sie Data-Governance-Tags erstellen und an BigQuery-Spalten anhängen. Erstellen Sie dann BigQuery-Datenrichtlinien, die auf diese Tags verweisen. Diese Richtlinien wenden Regeln für die Datenmaskierung an oder gewähren bestimmten Nutzern Zugriff auf Rohdaten. So wird sichergestellt, dass nur autorisierte Identitäten vertrauliche Daten sehen.
Weitere Informationen finden Sie unter Einführung in die Zugriffssteuerung auf Spaltenebene und Einführung in die Datenmaskierung.
Wenn Sie Data-Governance-Tags in der Cloud de Confiance Console erstellen und verwalten möchten, können Sie das BigQuery Security Center verwenden.
Vorbereitung
-
Installieren Sie die Google Cloud CLI.
-
Konfigurieren Sie die gcloud CLI für die Verwendung Ihrer föderierten Identität.
Weitere Informationen finden Sie unter Mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init - Zum Erstellen und Verwalten von Data Governance-Tags müssen Sie die BigQuery Enterprise Edition verwenden.
Erforderliche Rollen für Data-Governance-Tags
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Steuern des Spaltenzugriffs mit Data Governance-Tags benötigen:
-
Data-Governance-Tags erstellen:
- Tag-Administrator (
roles/resourcemanager.tagAdmin) für das Projekt oder die Organisation - Organization Viewer (
roles/resourcemanager.organizationViewer) für die Organisation
- Tag-Administrator (
-
Tags an Spalten anhängen oder daraus entfernen:
- BigQuery-Dateninhaber (
roles/bigquery.dataOwner) für die Tabelle - Tag-Nutzer (
roles/resourcemanager.tagUser) für die Organisation, das Projekt oder den Tag-Wert
- BigQuery-Dateninhaber (
-
Datenrichtlinien erstellen und verwalten:
BigQuery Data Policy Admin (
roles/bigquerydatapolicy.admin) für das Projekt
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Data-Governance-Tags erstellen
Erstellen Sie den Schlüssel für das Data-Governance-Tag und seine Werte.
Tag-Schlüssel erstellen
Wenn Sie einen Schlüssel für ein Data-Governance-Tag erstellen möchten, legen Sie das Feld purpose beim Erstellen des Tag-Schlüssels auf DATA_GOVERNANCE fest. Durch Festlegen dieses Zwecks wird das Tag für die Sicherheit auf Spaltenebene oder die Datenmaskierung kategorisiert und von allgemeinen Ressourcen-Tags in BigQuery unterschieden.
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im BigQuery-Navigationsmenü auf Governance und dann auf Sicherheitscenter.
Klicken Sie auf den Tab Data-Governance-Tags.
Klicken Sie auf Erstellen.
Geben Sie im Bereich Tag-Schlüssel erstellen die Details zum Tag-Schlüssel an:
- Geben Sie im Feld Name der Tags für die Data Governance einen Namen für den Tag-Schlüssel ein.
- Optional: Geben Sie im Feld Beschreibung eine Beschreibung für den Tag-Schlüssel ein.
Klicken Sie auf Erstellen.
gcloud
Zum Abrufen der aktuellen Richtlinie führen Sie den Befehl
gcloud resource-manager tags keys createaus:gcloud resource-manager tags keys create TAG_KEY \ --parent=projects/PROJECT_ID \ --purpose=DATA_GOVERNANCEErsetzen Sie Folgendes:
TAG_KEY: Der Kurzname für den Tag-Schlüssel.PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sieorganizations/ORGANIZATION_IDanstelle vonprojects/PROJECT_ID.
Terraform
Wenn Sie einen Tag-Schlüssel für Data Governance erstellen möchten, verwenden Sie die Ressource google_tags_tag_key im Anbieter google-beta und legen Sie das Argument purpose auf DATA_GOVERNANCE fest:
resource "google_tags_tag_key" "dg_key" {
provider = google-beta
parent = "projects/PROJECT_ID"
short_name = "TAG_KEY"
purpose = "DATA_GOVERNANCE"
}
Ersetzen Sie Folgendes:
TAG_KEY: Der Kurzname für den Tag-Schlüssel.PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sieorganizations/ORGANIZATION_IDanstelle vonprojects/PROJECT_ID.
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Cloud de Confiance -Standardprojekt fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Senden Sie eine
POST-Anfrage an dentagKeys-Endpunkt:curl --request POST \ "https://cloudresourcemanager.googleapis.com/v3/tagKeys" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{"shortName":"TAG_KEY","parent":"projects/PROJECT_ID","purpose":"DATA_GOVERNANCE"}' \ --compressedErsetzen Sie Folgendes:
TAG_KEY: Der Kurzname für den Tag-Schlüssel.PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sieorganizations/ORGANIZATION_IDanstelle vonprojects/PROJECT_ID.
Tag-Wert erstellen
So fügen Sie einem Tag-Schlüssel einen oder mehrere Werte hinzu:
Console
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im BigQuery-Navigationsmenü auf Governance und dann auf Sicherheitscenter.
Klicken Sie auf den Tab Data-Governance-Tags.
Suchen Sie in der Liste der Tag-Schlüssel nach dem Tag-Schlüssel, dem Sie einen Wert hinzufügen möchten, klicken Sie auf more_vert Aktionen und dann auf Tag-Werte hinzufügen.
Geben Sie im Bereich Tag-Werte hinzufügen einen Kurznamen für den Tag-Wert ein.
Optional: Geben Sie im Feld Beschreibung eine Beschreibung ein.
Klicken Sie auf Speichern.
gcloud
Rufen Sie den Namen des Tag-Schlüssel-Namespaces ab, indem Sie den Befehl
gcloud resource-manager tags keys listausführen:gcloud resource-manager tags keys list --parent=projects/PROJECT_IDErstellen Sie mit dem Befehl
gcloud resource-manager tags values createeinen neuen Wert:gcloud resource-manager tags values create TAG_VALUE \ --parent=PROJECT_ID/TAG_KEYErsetzen Sie Folgendes:
TAG_VALUE: Ein vom Nutzer angegebener Kurzname des Tag-Werts.PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sie stattdessenORGANIZATION_ID.
Terraform
Verwenden Sie zum Erstellen eines Tag-Werts die Ressource google_tags_tag_value im google-beta-Anbieter:
resource "google_tags_tag_value" "dg_value" {
provider = google-beta
parent = "tagKeys/${google_tags_tag_key.dg_key.name}"
short_name = "TAG_VALUE"
}
Ersetzen Sie Folgendes:
TAG_VALUE: Ein vom Nutzer angegebener Kurzname des Tag-Werts.
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Standardprojekt Cloud de Confiance fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Rufen Sie den Namen des Tag-Schlüssels mit Namespace ab:
curl --request GET \ "https://cloudresourcemanager.googleapis.com/v3/tagKeys/namespaced?name=PROJECT_ID/TAG_KEY" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json'Die Antwort enthält das Feld
name, z. B.tagKeys/4567890123.Senden Sie eine
POST-Anfrage an dentagValues-Endpunkt mit dem Namen des Tag-Schlüssels:curl --request POST \ "https://cloudresourcemanager.googleapis.com/v3/tagValues" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{"shortName":"TAG_VALUE","parent":"tagKeys/TAG_KEY_ID"}' \ --compressedErsetzen Sie Folgendes:
TAG_VALUE: ein vom Nutzer angegebener Kurzname des Tag-Werts.PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sie stattdessen IhreORGANIZATION_ID.TAG_KEY_ID: der Namespace-Name für den Tag-Schlüssel aus Schritt 1. Wenn der Tag-Schlüsselname beispielsweisetagKeys/4567890123lautet, ist die Tag-Schlüssel-ID4567890123.
Hierarchische Tag-Werte erstellen
Optional können Sie einen untergeordneten Tag-Wert erstellen, der einem Tag-Wert untergeordnet ist, und einen hierarchischen Baum aus Data-Governance-Tag-Werten erstellen. Die Hierarchie kann bis zu fünf Ebenen tief sein, wie im folgenden Diagramm dargestellt:
gcloud
Führen Sie den Befehl gcloud resource-manager tags values create aus und geben Sie im Flag --parent einen übergeordneten Tag-Wert an, um einen untergeordneten Tag-Wert zu erstellen:
gcloud resource-manager tags values create CHILD_TAG_VALUE \
--parent=PROJECT_ID/TAG_KEY/PARENT_TAG_VALUE
Ersetzen Sie Folgendes:
CHILD_TAG_VALUE: Der Kurzname für den untergeordneten Tag-Wert, den Sie erstellen.PROJECT_ID: die ID Ihres Projekts in Cloud de Confiance by S3NS . Wenn Sie eine Organisation anstelle eines Projekts angeben möchten, verwenden Sie stattdessenORGANIZATION_ID.TAG_KEY: der Kurzname des Tag-Schlüssels, der dem Tag-Wert übergeordnet ist.PARENT_TAG_VALUE: der Kurzname des übergeordneten Tag-Werts.
API
Wenn Sie einen untergeordneten Tag-Wert erstellen möchten, verwenden Sie den Ressourcennamen des Tag-Werts des übergeordneten Elements (z. B. tagValues/123456789012) im Feld parent:
curl --request POST \
"https://cloudresourcemanager.googleapis.com/v3/tagValues" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"shortName":"CHILD_TAG_VALUE","parent":"tagValues/PARENT_TAG_VALUE_ID"}' \
--compressed
Ersetzen Sie Folgendes:
CHILD_TAG_VALUE: der Kurzname für den untergeordneten Tag-Wert, den Sie erstellen.PARENT_TAG_VALUE_ID: Die numerische ID des übergeordneten Tag-Werts.
Data-Governance-Tags an BigQuery-Spalten anhängen
Hängen Sie die von Ihnen erstellten Data-Governance-Tags an die BigQuery-Spalten an, die Sie schützen möchten.
SQL
Neue Tabelle mit einer getaggten Spalte erstellen
Verwenden Sie die Anweisung CREATE TABLE, um beim Erstellen einer Tabelle Data Governance-Tags anzuhängen. Geben Sie das Tag an, indem Sie die Option data_governance_tags für die Spalte festlegen.
CREATE TABLE PROJECT_ID.DATASET_ID.TABLE_ID (
COLUMN_NAME INT64 OPTIONS (data_governance_tags=[("PROJECT_ID/TAG_KEY", "TAG_VALUE")])
);
Ersetzen Sie Folgendes:
PROJECT_ID: die ID Ihres Projekts in Cloud de Confiance by S3NS . Wenn Sie eine Organisation anstelle eines Projekts als übergeordnetes Element Ihres Tags angeben möchten, verwenden Sie stattdessen IhreORGANIZATION_IDfür das Tag-Schlüsselformat (ORGANIZATION_ID/TAG_KEY).DATASET_ID: die ID des Datasets, in dem sich die Tabelle befindet.TABLE_ID: Die ID der Tabelle, die Sie erstellen.COLUMN_NAME: Der Name der Spalte, die Sie taggen möchten.TAG_KEY: der Tag-Schlüssel, den Sie anwenden möchten.TAG_VALUE: der Tag-Wert, den Sie anwenden möchten.
Einer vorhandenen Tabelle ein Tag hinzufügen
Wenn Sie Data-Governance-Tags an eine Spalte in einer vorhandenen Tabelle anhängen möchten, verwenden Sie die Anweisung ALTER TABLE, um die Option data_governance_tags für die Spalte festzulegen.
ALTER TABLE PROJECT_ID.DATASET_ID.TABLE_ID
ALTER COLUMN COLUMN_NAME SET OPTIONS (data_governance_tags=[("PROJECT_ID/TAG_KEY", "TAG_VALUE")]);
bq-Befehlszeile
Neue Tabelle mit einer getaggten Spalte erstellen
Führen Sie den Befehl
bq mkaus, um eine lokale JSON-Schemadatei zu erstellen, die das Tag definiert:bq mk \ --table \ --project_id=PROJECT_ID \ --description="description of my table" \ --schema=SCHEMA_FILE.json \ DATASET_ID.TABLE_IDErsetzen Sie Folgendes:
PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts als übergeordnetes Element Ihres Tags angeben möchten, verwenden SieORGANIZATION_IDanstelle des Tag-Schlüsselformats (ORGANIZATION_ID/TAG_KEY).DATASET_ID: die ID des Datasets, in dem sich die Tabelle befindet.TABLE_ID: die ID der Tabelle, die Sie erstellen.
Tag zu einer vorhandenen Tabelle hinzufügen
Wenn Sie einer vorhandenen Tabelle ein Tag hinzufügen möchten, exportieren Sie zuerst das zugehörige Schema in eine lokale Datei:
bq show \ --project_id=PROJECT_ID \ --schema \ --format=prettyjson \ DATASET_ID.TABLE_ID > SCHEMA_FILE.jsonBearbeiten Sie die Schemadatei, um der Spalte das
dataGovernanceTagsInfo-Objekt hinzuzufügen. Beispiel:[ { "description": "my sensitive column", "mode": "NULLABLE", "name": "Column_X", "type": "INT64", "dataGovernanceTagsInfo": { "dataGovernanceTags": { "PROJECT_ID/TAG_KEY": "TAG_VALUE" } } }, { "mode": "REQUIRED", "name": "column2", "type": "FLOAT" } ]Aktualisieren Sie die Tabelle, um mit dem Befehl
bq updateTags an die vertrauliche Spalte anzuhängen:bq update \ --project_id=PROJECT_ID \ --schema=SCHEMA_FILE.json \ DATASET_ID.TABLE_IDSie können auch den Befehl
bq updateverwenden, um vorhandene Tags zu entfernen und neue anzuhängen.
Terraform
Neue Tabelle mit einer getaggten Spalte erstellen
Wenn Sie beim Erstellen einer Tabelle Tags für die Datenverwaltung an eine Spalte anhängen möchten, verwenden Sie die Ressource google_bigquery_table im Anbieter google-beta. Legen Sie das dataGovernanceTagsInfo-Objekt in der Schemadefinition der Spalte fest.
Im folgenden Beispiel wird eine Tabelle erstellt und ein Data Governance-Tag an eine Spalte angehängt:
resource "google_bigquery_table" "table" {
provider = google-beta
dataset_id = "DATASET_ID"
table_id = "TABLE_ID"
schema = <<EOF
[
{
"name": "COLUMN_NAME",
"type": "STRING",
"mode": "NULLABLE",
"dataGovernanceTagsInfo": {
"dataGovernanceTags": {
"PROJECT_ID/TAG_KEY": "TAG_VALUE"
}
}
}
]
EOF
deletion_protection = false
}
Ersetzen Sie Folgendes:
DATASET_ID: die ID des Datasets, in dem sich die Tabelle befindet.TABLE_ID: die ID der Tabelle, die Sie erstellen.COLUMN_NAME: Der Name der Spalte, die Sie taggen möchten.PROJECT_ID: die ID Ihres Projekts in Cloud de Confiance by S3NS . Wenn Sie eine Organisation anstelle eines Projekts als übergeordnetes Element Ihres Tags angeben möchten, verwenden Sie stattdessen IhreORGANIZATION_IDfür das Tag-Schlüsselformat (ORGANIZATION_ID/TAG_KEY).TAG_KEY: Der Kurzname für den Tag-Schlüssel.TAG_VALUE: der Kurzname des Tag-Werts, den Sie anhängen möchten.
Tag zu einer vorhandenen Tabelle hinzufügen
Wenn Sie einer Spalte in einer vorhandenen Tabelle Data Governance-Tags anfügen oder aktualisieren möchten, aktualisieren Sie das Schema der Spalte in der google_bigquery_table-Ressource, um das dataGovernanceTagsInfo-Objekt einzufügen oder zu ändern, und wenden Sie dann die aktualisierte Konfiguration an.
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Cloud de Confiance -Standardprojekt fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Neue Tabelle mit einer getaggten Spalte erstellen
Verwenden Sie die Methode tables.insert. Fügen Sie das Feld dataGovernanceTagsInfo in den Anfragetext ein.
```json
{
"schema": {
"fields": [
{
"name": "Column_X",
"type": "INT64",
"description": "sensitive column",
"dataGovernanceTagsInfo": {
"dataGovernanceTags": {
"PROJECT_ID/TAG_KEY": "TAG_VALUE"
}
}
}
]
}
}
```
Einer vorhandenen Tabelle ein Tag hinzufügen
Rufen Sie die aktuelle Tabellenressource mit der Methode
tables.getab.Ändern Sie die Tabellenressource, um das Feld
dataGovernanceTagsInfofür die Zielspalte einzufügen.Rufen Sie die Methode
tables.updateodertables.patchmit der aktualisierten Tabellenressource auf.
Datenrichtlinien erstellen und verwalten
BigQuery-Datenrichtlinien erstellen und verwalten, die auf Tags zur Datenverwaltung verweisen, um Maskierungsregeln oder Richtlinien für den Rohdatenzugriff anzuwenden.
Nachdem eine Datenrichtlinie für eine mit einem Tag versehene Spalte erstellt wurde, können nur Nutzer, die in dieser Richtlinie angegeben sind, auf die Spalte zugreifen, sofern sie auch Zugriff auf die Tabelle haben. Allen anderen Nutzern wird der Zugriff verweigert.
Datenrichtlinien erstellen
Terraform
Wenn Sie eine Datenrichtlinie erstellen möchten, die auf ein Data Governance-Tag verweist, verwenden Sie die Ressource google_bigquery_datapolicyv2_data_policy im google-beta-Provider. Geben Sie den data_governance_tag-Block an, um die Richtlinie an einen Schlüssel und Wert für ein Data-Governance-Tag zu binden.
Datenrichtlinie mit einer vordefinierten SHA256-Maskierungsregel erstellen
Im folgenden Beispiel wird eine Datenmaskierungsrichtlinie erstellt, die eine vordefinierte SHA256-Maskierungsroutine verwendet:
resource "google_bigquery_datapolicyv2_data_policy" "mask_policy" {
provider = google-beta
location = "LOCATION"
data_policy_type = "DATA_MASKING_POLICY"
data_policy_id = "POLICY_ID"
data_masking_policy {
predefined_expression = "SHA256"
}
data_governance_tag {
key = "PROJECT_ID/TAG_KEY"
value = "TAG_VALUE"
}
grantees = [
"principal://goog/subject/EMAIL_ADDRESS"
]
}
Ersetzen Sie Folgendes:
LOCATION: Die Region, in der Sie die Datenrichtlinie erstellen. Weitere Informationen finden Sie unter Standorte.POLICY_ID: die ID für die Datenrichtlinie.PROJECT_ID: die ID Ihres Projekts in Cloud de Confiance by S3NS . Wenn Sie anstelle eines Projekts eine Organisation als übergeordnetes Element für Ihr Tag angeben möchten, verwenden Sie IhreORGANIZATION_IDanstelle des Formatskey(ORGANIZATION_ID/TAG_KEY).TAG_KEY: Der Kurzname für den Tag-Schlüssel.TAG_VALUE: Der Kurzname des Tag-Werts.EMAIL_ADDRESS: die E-Mail-Adresse des Nutzers oder Dienstkontos, dem Zugriff gewährt werden soll.
Richtlinie für den Zugriff auf Rohdaten erstellen
Wenn Sie eine Richtlinie für den Zugriff auf Rohdaten erstellen möchten, legen Sie data_policy_type auf RAW_DATA_ACCESS_POLICY fest:
resource "google_bigquery_datapolicyv2_data_policy" "raw_policy" {
provider = google-beta
location = "LOCATION"
data_policy_type = "RAW_DATA_ACCESS_POLICY"
data_policy_id = "POLICY_ID"
data_governance_tag {
key = "PROJECT_ID/TAG_KEY"
value = "TAG_VALUE"
}
grantees = [
"principal://goog/subject/EMAIL_ADDRESS"
]
}
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre Terraform-Konfiguration auf ein Cloud de Confiance -Projekt anzuwenden.
Cloud Shell vorbereiten
- Rufen Sie Cloud Shell auf.
-
Legen Sie das Standardprojekt Cloud de Confiance fest, auf das Sie Ihre Terraform-Konfigurationen anwenden möchten.
Sie müssen diesen Befehl nur einmal pro Projekt und in jedem beliebigen Verzeichnis ausführen.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Umgebungsvariablen werden überschrieben, wenn Sie in der Terraform-Konfigurationsdatei explizite Werte festlegen.
Verzeichnis vorbereiten
Jede Terraform-Konfigurationsdatei muss ein eigenes Verzeichnis haben (auch als Stammmodul bezeichnet).
-
Erstellen Sie in Cloud Shell ein Verzeichnis und eine neue Datei in diesem Verzeichnis. Der Dateiname muss die Erweiterung
.tfhaben, z. B.main.tf. In dieser Anleitung wird die Datei alsmain.tfbezeichnet.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Wenn Sie einer Anleitung folgen, können Sie den Beispielcode in jedem Abschnitt oder Schritt kopieren.
Kopieren Sie den Beispielcode in das neu erstellte
main.tf.Kopieren Sie optional den Code aus GitHub. Dies wird empfohlen, wenn das Terraform-Snippet Teil einer End-to-End-Lösung ist.
- Prüfen und ändern Sie die Beispielparameter, die auf Ihre Umgebung angewendet werden sollen.
- Speichern Sie die Änderungen.
-
Initialisieren Sie Terraform. Dies ist nur einmal für jedes Verzeichnis erforderlich.
terraform init
Fügen Sie optional die Option
-upgradeein, um die neueste Google-Anbieterversion zu verwenden:terraform init -upgrade
Änderungen anwenden
-
Prüfen Sie die Konfiguration und prüfen Sie, ob die Ressourcen, die Terraform erstellen oder aktualisieren wird, Ihren Erwartungen entsprechen:
terraform plan
Korrigieren Sie die Konfiguration nach Bedarf.
-
Wenden Sie die Terraform-Konfiguration an. Führen Sie dazu den folgenden Befehl aus und geben Sie
yesan der Eingabeaufforderung ein:terraform apply
Warten Sie, bis Terraform die Meldung „Apply complete“ anzeigt.
- Öffnen Sie Ihr Cloud de Confiance -Projekt, um die Ergebnisse aufzurufen. Rufen Sie in der Cloud de Confiance Console Ihre Ressourcen in der Benutzeroberfläche auf, um sicherzustellen, dass Terraform sie erstellt oder aktualisiert hat.
API
Erstellen Sie eine Datenrichtlinie, die eine vordefinierte SHA256-Maskierungsregel verwendet, oder eine Richtlinie für den Zugriff auf Rohdaten.
Datenrichtlinie mit einer vordefinierten SHA256-Maskierungsregel erstellen
Wenn Sie eine Datenrichtlinie mit einer vordefinierten SHA256-Maskierungsregel erstellen möchten, senden Sie eine POST-Anfrage an den Endpunkt dataPolicies:
curl --request POST \
"https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"dataPolicy":{"dataPolicyType":"DATA_MASKING_POLICY","dataMaskingPolicy":{"predefinedExpression":"SHA256"},"grantees": ["principal://goog/subject/EMAIL_ADDRESS"],"dataGovernanceTag":{"key":"PROJECT_ID/TAG_KEY","value":"TAG_VALUE"}},"dataPolicyId":"POLICY_ID"}' \
--compressed
Ersetzen Sie Folgendes:
PROJECT_ID: die ID Ihres Cloud de Confiance by S3NS-Projekts. Wenn Sie eine Organisation anstelle eines Projekts als übergeordnetes Element Ihres Tags angeben möchten, verwenden Sie IhreORGANIZATION_IDanstelle desdataGovernanceTag.key-Formats (ORGANIZATION_ID/TAG_KEY).LOCATION: die Region, in der Sie die Datenrichtlinie erstellen. Weitere Informationen finden Sie unter Standorte.EMAIL_ADDRESS: die E-Mail-Adresse des Nutzers, dem Zugriff gewährt werden soll.TAG_KEY: der Kurzname für den Tag-Schlüssel.TAG_VALUE: Ein vom Nutzer angegebener Kurzname des Tag-Werts.POLICY_ID: Die ID für die Datenrichtlinie.
Richtlinie für den Zugriff auf Rohdaten erstellen
Wenn Sie eine Richtlinie für den Zugriff auf Rohdaten erstellen möchten, setzen Sie dataPolicyType auf RAW_DATA_ACCESS_POLICY:
curl --request POST \
"https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"dataPolicy":{"dataPolicyType":"RAW_DATA_ACCESS_POLICY","grantees": ["principal://goog/subject/EMAIL_ADDRESS"],"dataGovernanceTag":{"key":"PROJECT_ID/TAG_KEY","value":"TAG_VALUE"}},"dataPolicyId":"POLICY_ID"}' \
--compressed
Datenrichtlinien aktualisieren
Aktualisieren Sie eine vorhandene Datenrichtlinie, um zusätzlichen Nutzern Zugriff zu gewähren.
API
Wenn Sie Nutzer hinzufügen möchten, indem Sie eine Richtlinie direkt aktualisieren, rufen Sie zuerst die aktuelle Richtlinie und ihr
etagab:curl --request GET \ "https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies/POLICY_ID" \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --compressedSenden Sie eine
PATCH-Anfrage mit der aktualisierten Liste der Empfänger und deretagaus dem vorherigen Schritt:curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "grantees": ["principal://goog/subject/user1@example.com","principal://iam.googleapis.com/projects/-/serviceAccounts/SA_EMAIL_ADDRESS"], "etag": "ETAG" }' \ "https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies/POLICY_ID?updateMask=grantees"Ersetzen Sie
ETAGdurch denetag-Wert, der von derGET-Anfrage im vorherigen Schritt zurückgegeben wurde.Alternativ können Sie die Methode
addGranteesverwenden, um einer Richtlinie Nutzer hinzuzufügen:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "grantees": ["principal://goog/subject/user1@example.com","principal://iam.googleapis.com/projects/-/serviceAccounts/SA_EMAIL_ADDRESS"] }' \ "https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies/POLICY_ID:addGrantees"Verwenden Sie die Methode
removeGrantees, um Nutzer aus einer Richtlinie zu entfernen:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "grantees": ["principal://goog/subject/user1@example.com","principal://iam.googleapis.com/projects/-/serviceAccounts/SA_EMAIL_ADDRESS"] }' \ "https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies/POLICY_ID:removeGrantees"
Datenrichtlinien löschen
API
Senden Sie zum Löschen einer Datenrichtlinie eine DELETE-Anfrage an den Endpunkt dataPolicies:
curl --request DELETE \
"https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies/POLICY_ID" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--compressed
Datenrichtlinien auflisten
API
Wenn Sie Datenrichtlinien auflisten möchten, die auf einen Tag-Schlüssel verweisen, senden Sie eine GET-Anfrage mit dem Parameter filter an den Endpunkt dataPolicies:
curl --request GET \
"https://bigquerydatapolicy.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dataPolicies?filter=dataGovernanceTag:PROJECT_ID/TAG_KEY" \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--compressed
Interaktionen mit anderen Funktionen
In diesem Abschnitt wird beschrieben, wie Data Governance-Tags mit anderen BigQuery-Funktionen interagieren.
| Funktion | Interaktion |
|---|---|
| Informationsschema | An Spalten angehängte Data-Governance-Tags sind in den Ansichten INFORMATION_SCHEMA.COLUMNS und INFORMATION_SCHEMA.COLUMN_FIELD_PATHS enthalten. |
| Tabelle kopieren | Regionsübergreifende Tabellenkopien sind für Tabellen mit Sicherheitsfunktionen auf Spaltenebene deaktiviert, einschließlich Tabellen mit Data Governance-Tags. |
| Zeitreise | Der Zugriff auf Verlaufsdaten von Tabellen unterliegt den Zugriffsrichtlinien und Tags, die an die Tabelle angehängt sind. |
Standardprojekt für Datenrichtlinien konfigurieren
Wenn Sie auf Spalten zugreifen, die durch Data-Governance-Tags geschützt sind, wertet BigQuery standardmäßig nur die Datenrichtlinien in dem Projekt aus, in dem sich die Tabelle befindet. In anderen Projekten definierte Datenrichtlinien gelten nicht, es sei denn, ein Administrator konfiguriert ein Standardprojekt für Datenrichtlinien auf Organisationsebene.
Wenn für Ihre Organisation ein Standardprojekt für Datenrichtlinien konfiguriert ist, werden bei der Bestimmung des Spaltenzugriffs sowohl die Datenrichtlinien des Projekts der Tabelle als auch die des Standardprojekts für Datenrichtlinien ausgewertet.
Wenn für einen Nutzer sowohl im Projekt der Tabelle als auch im Standardprojekt für Datenrichtlinien widersprüchliche Datenrichtlinien gelten, haben die Datenrichtlinien im Projekt der Tabelle Vorrang.
Informationen zum Festlegen oder Aufrufen der Option default_data_policy_projects auf Organisationsebene mit DDL oder INFORMATION_SCHEMA-Ansichten finden Sie in der Dokumentation zur Standardkonfiguration unter Einstellungen für die Datenverwaltung.
Einschränkungen von Data-Governance-Tags
- BigQuery Omni-Tabellen unterstützen keine Data-Governance-Tags für Spalten.
- In der Cloud de Confiance by S3NS Console können Sie Data Governance-Tags für Spalten ansehen, aber nicht binden oder entbinden.
- Sie können ein Tag pro Spalte und bis zu 1.000 eindeutige Tags pro Tabelle binden.
- Wenn Sie eine getaggte Spalte mit der BigQuery Storage Read API,
tabledata.list-Aufrufen oder Platzhaltertabellen abfragen, erhalten Sie eine Fehlermeldung vom Typ „Zugriff verweigert“, sofern Sie nicht über eine Datenrichtlinie Zugriff haben. - Bei
STRUCT-Feldern können Sie Data-Governance-Tags nur auf die Blattfelder anwenden. - Sie können Tag-Werte löschen, die an Spalten angehängt sind. Wenn Sie einen Tag-Wert löschen, bleibt die Tag-Bindung für die Spalte bestehen. Da der Tag-Wert jedoch nicht mehr vorhanden ist, geht der Zugriff auf die Spalte möglicherweise verloren.
Fehlerbehebung bei Data-Governance-Tags
In diesem Abschnitt wird beschrieben, wie Sie häufige Probleme beim Steuern des Zugriffs auf Spalten mit Data Governance-Tags beheben.
Falsch formatierte Tag-Namen
Wenn Sie Tags erstellen, definieren Sie einen Kurznamen (z. B. ssn). Wenn Sie jedoch Tags an Spalten in Ihrem Schema anhängen oder in Bedingungen verwenden, muss für den Tag-Schlüssel das Namespace-Format (PROJECT_ID/TAG_KEY oder ORGANIZATION_ID/TAG_KEY) verwendet werden, während für den Tag-Wert weiterhin der Kurzname verwendet wird. Wenn Sie nur den Kurznamen für den Tag-Schlüssel angeben, wird ein Invalid tagKey- oder Invalid
tagValue-Fehler ausgegeben.
Projektübergreifende Richtlinienanwendung
Standardmäßig werden nur die Datenrichtlinien des Projekts der Tabelle ausgewertet. Richtlinien aus anderen Projekten gelten nur, wenn auf Organisationsebene ein Standardprojekt für Datenrichtlinien konfiguriert ist. Weitere Informationen zum Konfigurieren und Auswerten von projektübergreifenden Richtlinien finden Sie unter Standardprojekt für Datenrichtlinien konfigurieren.
Nächste Schritte
- Eine Übersicht über Tags in Cloud de Confiance by S3NSfinden Sie unter Tags – Übersicht.
- Weitere Informationen zur Verwendung von Tags finden Sie unter Tags erstellen und verwalten.
- Weitere Informationen zum Anwenden von Richtlinien auf Spalten
- Informationen zum Steuern des Zugriffs auf BigQuery-Ressourcen mit IAM-Bedingungen finden Sie unter Zugriff mit IAM-Bedingungen steuern.