Zugriff mit Zugriffssteuerung auf Spaltenebene beschränken

Auf dieser Seite wird gezeigt, wie Sie mit der BigQuery-Zugriffssteuerung auf Spaltenebene den Zugriff auf BigQuery-Daten auf Spaltenebene beschränken. Unter Einführung in die BigQuery-Zugriffssteuerung auf Spaltenebene finden Sie allgemeine Informationen dazu.

Für die Anleitungen auf dieser Seite wird sowohl BigQuery als auch Data Catalog verwendet.

Sie müssen das Tabellenschema aktualisieren, um ein Richtlinien-Tag für eine Spalte festzulegen. Mit der Google Cloud Console, dem bq-Befehlszeilentool und der BigQuery API können Sie ein Richtlinien-Tag für eine Spalte festlegen. Außerdem können Sie mit den folgenden Werkzeugen in ein und demselben Vorgang eine Tabelle erstellen, das Schema angeben und Richtlinien-Tags festlegen:

  • Den Befehlen bq mk und bq load des bq-Befehlszeilentools.
  • Der API-Methode tables.insert.
  • Die Seite Tabelle erstellen in der Google Cloud Console. Wenn Sie die Google Cloud Console verwenden, müssen Sie Als Text bearbeiten auswählen, wenn Sie das Schema hinzufügen oder bearbeiten.

Zur Verbesserung der Zugriffssteuerung auf Spaltenebene können Sie optional die dynamische Datenmaskierung verwenden. Mit der Datenmaskierung können Sie sensible Daten maskieren, indem Sie anstelle des tatsächlichen Werts der Spalte Null-, Standard- oder Hash-Inhalte ersetzen.

Hinweise

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Data Catalog and BigQuery Data Policy APIs aktivieren.

    Aktivieren Sie die APIs

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Data Catalog and BigQuery Data Policy APIs aktivieren.

    Aktivieren Sie die APIs

  8. BigQuery ist in neuen Projekten automatisch aktiviert. Möglicherweise müssen Sie es jedoch in einem bereits vorhandenen Projekt aktivieren.

    BigQuery API aktivieren.

    Aktivieren Sie die API

Rollen und Berechtigungen

Es gibt mehrere Rollen für Richtlinien-Tags für Nutzer und Dienstkonten.

  • Nutzer oder Dienstkonten, die Richtlinien-Tags verwalten, müssen die Data Catalog-Rolle Richtlinien-Tag-Administrator haben. Die Rolle "Richtlinien-Tag-Administrator" kann Taxonomien und Richtlinien-Tags verwalten und IAM-Rollen zuweisen oder entfernen, die mit Richtlinien-Tags verknüpft sind.
  • Nutzer oder Dienstkonten, die für die Zugriffssteuerung die Zugriffssteuerung auf Spaltenebene erzwingen, benötigen die Rolle "BigQuery-Administrator" oder die Rolle "BigQuery-Dateninhaber". BigQuery-Rollen können Datenrichtlinien verwalten, mit denen die Zugriffssteuerung für eine Taxonomie erzwungen wird.

  • Nutzer oder Dienstkonten, die Daten abfragen, die durch die Zugriffssteuerung auf Spaltenebene geschützt sind, benötigen die Data Catalog-Rolle "Detaillierter Lesezugriff", um auf diese Daten zuzugreifen.

Weitere Informationen zu allen Rollen, die mit Richtlinien-Tags in Zusammenhang stehen, finden Sie unter Rollen, die mit Zugriffssteuerung auf Spaltenebene verwendet werden.

Die Data Catalog-Rolle "Richtlinien-Tag-Administrator"

Die Data Catalog-Rolle "Richtlinien-Tag-Administrator" kann Datenrichtlinien-Tags erstellen und verwalten.

Zum Zuweisen der Rolle "Richtlinien-Tag-Administrator" benötigen Sie die Berechtigung resourcemanager.projects.setIamPolicy im Projekt, für das Sie die Rolle zuweisen möchten. Wenn Sie die Berechtigung resourcemanager.projects.setIamPolicy nicht haben, bitten Sie einen Inhaber des Projekts, Ihnen entweder die Berechtigung zu erteilen oder die folgenden Schritte für Sie auszuführen.

  1. Öffnen Sie in der Google Cloud Console die Seite "IAM".

    Zur Seite "IAM"

  2. Wenn sich die E-Mail-Adresse des Nutzers, der die Rolle erhalten soll, in der Liste befindet, wählen Sie die E-Mail-Adresse aus und klicken auf das Stiftsymbol zum Bearbeiten. Klicken Sie dann auf Weitere Rolle hinzufügen.

    Wenn die E-Mail-Adresse des Nutzers nicht in der Liste enthalten ist, klicken Sie auf Hinzufügen und geben Sie dann die E-Mail-Adresse in das Feld Neue Hauptkonten ein.

  3. Klicken Sie auf die Drop-down-Liste Rolle auswählen.

  4. Klicken Sie auf Data Catalog und anschließend auf Richtlinien-Tag-Administrator.

  5. Klicken Sie auf Speichern.

Die Rollen "BigQuery-Administrator" und "Dateninhaber"

Die BigQuery-Administrator- und -Dateninhaberrollen können Datenrichtlinien verwalten.

Um eine dieser Rollen zuzuweisen, benötigen Sie die Berechtigung resourcemanager.projects.setIamPolicy in dem Projekt, für das Sie die Rolle zuweisen möchten. Wenn Sie die Berechtigung resourcemanager.projects.setIamPolicy nicht haben, bitten Sie einen Inhaber des Projekts, Ihnen entweder die Berechtigung zu erteilen oder die folgenden Schritte für Sie auszuführen.

  1. Öffnen Sie in der Google Cloud Console die Seite "IAM".

    Zur Seite "IAM"

  2. Wenn sich die E-Mail-Adresse des Nutzers, der die Rolle erhalten soll, in der Liste befindet, wählen Sie die E-Mail-Adresse aus und klicken auf das Stiftsymbol zum Bearbeiten. Klicken Sie dann auf Weitere Rolle hinzufügen.

    Wenn die E-Mail-Adresse des Nutzers nicht in der Liste enthalten ist, klicken Sie auf Hinzufügen und geben Sie dann die E-Mail-Adresse in das Feld Neue Hauptkonten ein.

  3. Klicken Sie auf die Drop-down-Liste Rolle auswählen.

  4. Klicken Sie auf BigQuery und dann entweder auf Administrator oder Dateninhaber.

  5. Klicken Sie auf Speichern.

Die Data Catalog-Rolle "Detaillierter Lesezugriff"

Nutzer, die Zugriff auf Daten benötigen, die durch Sicherheit auf Spaltenebene geschützt sind, benötigen die Rolle Detaillierter Lesezugriff für Data Catalog. Diese Rolle wird Hauptkonten im Rahmen der Konfiguration eines Richtlinien-Tags zugewiesen.

Um einem Nutzer die Rolle "Detaillierter Lesezugriff" für ein Richtlinien-Tag zuzuweisen, benötigen Sie die Berechtigung datacatalog.taxonomies.setIamPolicy in dem Projekt, das die Taxonomie dieses Richtlinien-Tags enthält. Wenn Sie die Berechtigung datacatalog.taxonomies.setIamPolicy nicht haben, bitten Sie einen Inhaber des Projekts, Ihnen entweder die Berechtigung zu erteilen oder die Aktion für Sie auszuführen.

Eine Anleitung finden Sie unter Berechtigungen für Richtlinien-Tags festlegen.

Zugriffssteuerung auf Spaltenebene einrichten

Richten Sie die Zugriffssteuerung auf Spaltenebene ein. Führen Sie dazu folgende Aufgaben aus:

  • Erstellen Sie eine Taxonomie von Richtlinien-Tags.
  • Verknüpfen Sie die Hauptkonten mit den Richtlinien-Tags und gewähren Sie den Hauptkonten die Data Catalog-Rolle "Detaillierter Lesezugriff".
  • Verknüpfen Sie die Richtlinien-Tags mit den BigQuery-Tabellenspalten.
  • Erzwingen Sie die Zugriffssteuerung für die Taxonomie, die die Richtlinien-Tags enthält.

Taxonomien erstellen

Dem Nutzer- oder Dienstkonto, das eine Taxonomie erstellt, muss die Data Catalog-Rolle "Richtlinien-Tag-Administrator" zugewiesen sein.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf Taxonomie erstellen.
  3. Auf der Seite Neue Taxonomie gehen Sie so vor:

    1. Geben Sie unter Taxonomiename den Namen der Taxonomie ein, die Sie erstellen möchten.
    2. Geben Sie unter Beschreibung eine Beschreibung ein.
    3. Ändern Sie bei Bedarf das unter Projekt aufgeführte Projekt.
    4. Ändern Sie bei Bedarf den unter Speicherort aufgeführten Speicherort.
    5. Geben Sie unter Richtlinien-Tags einen Namen und eine Beschreibung für das Richtlinien-Tag ein.
    6. Wenn Sie einem Richtlinien-Tag ein untergeordnetes Richtlinien-Tag hinzufügen möchten, klicken Sie auf Untergeordnetes Tag hinzufügen.
    7. Klicken Sie auf + Richtlinien-Tag hinzufügen, wenn ein neues Richtlinien-Tag auf der gleichen Ebene wie ein vorhandenes Richtlinien-Tag hinzugefügt werden soll.
    8. Fügen Sie weitere Richtlinien-Tags und untergeordnete Richtlinien-Tags hinzu, wenn es für Ihre Taxonomie erforderlich ist.
    9. Wenn Sie alle Richtlinien-Tags für Ihre Hierarchie erstellt haben, klicken Sie auf Erstellen.

API

Rufen Sie taxonomies.import anstelle der ersten beiden Schritte des folgenden Verfahrens auf, wenn Sie vorhandene Taxonomien verwenden möchten.

  1. Rufen Sie taxonomies.create auf, um eine Taxonomie zu erstellen.
  2. Rufen Sie taxonomies.policytag.create auf, um ein Richtlinien-Tag zu erstellen.

Berechtigungen für Richtlinien-Tags festlegen

Dem Nutzer- oder Dienstkonto, das eine Taxonomie erstellt, muss die Data Catalog-Rolle "Richtlinien-Tag-Administrator" zugewiesen sein.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf den Namen der Taxonomie, die die relevanten Richtlinien-Tags enthält.

  3. Wählen Sie ein oder mehrere Richtlinien-Tags aus.

  4. Wenn das Infofeld ausgeblendet ist, klicken Sie auf Infofeld ansehen.

  5. Im Infobereich werden die Rollen und Hauptkonten für die ausgewählten Richtlinien-Tags angezeigt. Fügen Sie die Konten Richtlinien-Tag-Administrator hinzu, die Richtlinien-Tags erstellen und verwalten. Fügen Sie den Konten, die Zugriff auf die durch die Zugriffssteuerung auf Spaltenebene geschützten Daten haben sollen, die Rolle Detaillierter Lesezugriff hinzu. In diesem Bereich können Sie auch Rollen aus Konten entfernen oder andere Berechtigungen ändern.

  6. Klicken Sie auf Speichern.

API

Rufen Sie taxonomies.policytag.setIamPolicy auf, um Zugriff auf ein Richtlinien-Tag zu gewähren, indem Sie Hauptkonten den entsprechenden Rollen zuweisen.

Richtlinien-Tags für Spalten festlegen

Das Nutzer- oder Dienstkonto, mit dem ein Richtlinien-Tag festgelegt werden soll, benötigt die Berechtigungen datacatalog.taxonomies.get und bigquery.tables.setCategory. datacatalog.taxonomies.get ist in den Data Catalog-Richtlinien-Tags-Administrator- und Projektbetrachter-Rollen enthalten. bigquery.tables.setCategory ist in den Rollen „BigQuery-Administrator“ (roles/bigquery.admin) und „BigQuery-Dateninhaber“ (roles/bigquery.dataOwner) enthalten.

Console

Legen Sie das Richtlinien-Tag fest, indem Sie in der Google Cloud Console ein Schema ändern.

  1. Öffnen Sie in der Google Cloud Console die Seite "BigQuery".

    Zur Seite „BigQuery“

  2. Suchen Sie in BigQuery Explorer die Tabelle, die Sie aktualisieren möchten, und wählen Sie sie aus. Das Tabellenschema für diese Tabelle wird geöffnet.

  3. Klicken Sie auf Schema bearbeiten.

  4. Wählen Sie im Bildschirm Aktuelles Schema die Zielspalte aus und klicken Sie auf Richtlinien-Tag hinzufügen.

  5. Suchen Sie im Bildschirm Richtlinien-Tag hinzufügen das Richtlinien-Tag, das Sie auf die Spalte anwenden möchten, und wählen Sie es aus.

  6. Klicken Sie auf Auswählen. Ihr Bildschirm sollte nun in etwa so aussehen:

    Schema bearbeiten.

  7. Klicken Sie auf Speichern.

bq

  1. Schreiben Sie das Schema in eine lokale Datei.

    bq show --schema --format=prettyjson \
       project-id:dataset.table > schema.json
    

    wobei

    • project-id ist die Projekt-ID.
    • dataset ist der Name des Datasets, das die zu aktualisierende Tabelle enthält.
    • table ist der Name der Tabelle, die Sie aktualisieren.
  2. Ändern Sie "schema.json" so, dass darin ein Richtlinien-Tag für eine Spalte festgelegt wird. Verwenden Sie für den Wert des Feldes names von policyTags den Ressourcennamen des Richtlinien-Tags.

    [
     ...
     {
       "name": "ssn",
       "type": "STRING",
       "mode": "REQUIRED",
       "policyTags": {
         "names": ["projects/project-id/locations/location/taxonomies/taxonomy-id/policyTags/policytag-id"]
       }
     },
     ...
    ]
    
  3. Aktualisieren Sie das Schema.

    bq update \
       project-id:dataset.table schema.json
    

API

Rufen Sie für vorhandene Tabellen tables.patch oder für neue Tabellen tables.insert auf. Verwenden Sie das Attribut schema des übergebenen Table-Objekts, um ein Richtlinien-Tag in Ihrer Schemadefinition festzulegen. Das Beispielschema für die Befehlszeile zeigt, wie Sie ein Richtlinien-Tag angeben.

Wenn Sie mit einer vorhandenen Tabelle arbeiten, wird die Methode tables.patch bevorzugt, da die Methode tables.update die gesamte Tabellenressource ersetzt.

Weitere Möglichkeiten zum Festlegen von Richtlinien-Tags für Spalten

Sie können Richtlinien-Tags auch in folgenden Situationen festlegen:

  • Sie erstellen eine Tabelle mit bq mk. Dabei übergeben Sie ein Schema, das zum Erstellen der Tabelle verwendet werden soll.
  • Sie laden mit bq load Daten in eine Tabelle. Dabei übergeben Sie ein Schema, das zum Laden der Tabelle verwendet werden soll.

Allgemeine Informationen zu Schemas finden Sie unter Schema angeben.

Zugriffssteuerung erzwingen

Folgen Sie dieser Anleitung, um das Erzwingen der Zugriffssteuerung zu aktivieren oder zu deaktivieren.

Für die Erzwingung der Zugriffssteuerung muss eine Datenrichtlinie erstellt werden. Dies geschieht für Sie, wenn Sie die Zugriffssteuerung mithilfe der Google Cloud Console erzwingen. Wenn Sie die Zugriffssteuerung mithilfe der BigQuery Data Policy API erzwingen möchten, müssen Sie die Datenrichtlinie explizit erstellen.

Das Nutzer- oder Dienstkonto, das die Zugriffssteuerung erzwingt, muss entweder die Rolle "BigQuery-Administrator" oder die Rolle "BigQuery-Dateninhaber" haben. Sie müssen auch die Data Catalog-Administrator- oder die Data Catalog-Betrachter-Rolle haben.

Console

So erzwingen Sie die Zugriffssteuerung:

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf die Taxonomie, für die Sie die Zugriffssteuerung auf Spaltenebene erzwingen möchten.

  3. Klicken Sie auf Zugriffssteuerung erzwingen, um sie zu aktivieren, wenn die Option Zugriffssteuerung erzwingen noch nicht aktiviert ist.

Wenn das aktive Erzwingen der Zugriffssteuerung beendet werden soll, klicken Sie auf Zugriffssteuerung erzwingen, um das Steuerelement umzuschalten.

Wenn Datenrichtlinien mit einem der Richtlinien-Tags in der Taxonomie verknüpft sind, müssen Sie alle Datenrichtlinien in der Taxonomie löschen, bevor Sie die Durchsetzung der Zugriffssteuerung beenden. Wenn Sie die Datenrichtlinien mit der BigQuery Data Policy API löschen, müssen Sie alle Datenrichtlinien mit einem dataPolicyType von DATA_MASKING_POLICY löschen. Weitere Informationen finden Sie unter Datenrichtlinien löschen.

API

Rufen Sie zum Erzwingen der Zugriffssteuerung create auf und übergeben Sie eine DataPolicy-Ressource, wobei das Feld dataPolicyType auf COLUMN_LEVEL_SECURITY_POLICY gesetzt ist.

Löschen Sie die mit der Taxonomie verknüpfte Datenrichtlinie, um die Erzwingung der Zugriffssteuerung zu beenden, wenn sie aktiviert ist. Rufen Sie dazu die Methode delete für diese Datenrichtlinie auf.

Wenn Datenrichtlinien mit einem der Richtlinien-Tags in der Taxonomie verknüpft sind, können Sie die Erzwingung der Zugriffssteuerung nicht beenden, ohne zuerst alle Datenrichtlinien in der Taxonomie zu löschen. Weitere Informationen finden Sie unter Datenrichtlinien löschen.

Mit Richtlinien-Tags arbeiten

In diesem Abschnitt erfahren Sie, wie Sie Richtlinien-Tags aufrufen, ändern und löschen.

Richtlinien-Tags aufrufen

So rufen Sie die Richtlinien-Tags auf, die Sie für eine Taxonomie erstellt haben:

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf die Taxonomie, deren Richtlinien-Tags Sie aufrufen möchten. Auf der Seite Taxonomien werden die Richtlinien-Tags für die jeweilige Taxonomie angezeigt.

Richtlinien-Tags in Schema aufrufen

Beim Prüfen des Tabellenschemas haben Sie auch die Möglichkeit, die auf eine Tabelle angewendeten Richtlinien-Tags zu prüfen. Sie können das Schema mit der Google Cloud Console, dem bq-Befehlszeilentool, der BigQuery API und den Clientbibliotheken aufrufen. Weitere Informationen zum Aufrufen des Schemas finden Sie unter Informationen zu Tabellen abrufen.

Berechtigungen für Richtlinien-Tags aufrufen

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf den Namen der Taxonomie, die die relevanten Richtlinien-Tags enthält.

  3. Wählen Sie ein oder mehrere Richtlinien-Tags aus.

  4. Wenn das Infofeld ausgeblendet ist, klicken Sie auf Infofeld ansehen.

  5. Im Infobereich werden die Rollen und Hauptkonten für die ausgewählten Richtlinien-Tags angezeigt.

Berechtigungen für Richtlinien-Tags aktualisieren

Dem Nutzer- oder Dienstkonto, das eine Taxonomie erstellt, muss die Data Catalog-Rolle "Richtlinien-Tag-Administrator" zugewiesen sein.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf den Namen der Taxonomie, die die relevanten Richtlinien-Tags enthält.

  3. Wählen Sie ein oder mehrere Richtlinien-Tags aus.

  4. Wenn das Infofeld ausgeblendet ist, klicken Sie auf Infofeld ansehen.

  5. Im Infobereich werden die Rollen und Hauptkonten für die ausgewählten Richtlinien-Tags angezeigt. Fügen Sie die Konten Richtlinien-Tag-Administrator hinzu, die Richtlinien-Tags erstellen und verwalten. Fügen Sie den Konten, die Zugriff auf die durch die Zugriffssteuerung auf Spaltenebene geschützten Daten haben sollen, die Rolle Detaillierter Lesezugriff hinzu. In diesem Bereich können Sie auch Rollen aus Konten entfernen oder andere Berechtigungen ändern.

  6. Klicken Sie auf Speichern.

API

Rufen Sie taxonomies.policytag.setIamPolicy auf, um Zugriff auf ein Richtlinien-Tag zu gewähren, indem Sie Hauptkonten den entsprechenden Rollen zuweisen.

Ressourcennamen von Richtlinien-Tags abrufen

Wenn Sie das Richtlinien-Tag auf eine Spalte anwenden möchen, benötigen Sie den Ressourcennamen eines Richtlinien-Tags.

So rufen Sie den Ressourcennamen eines Richtlinien-Tags ab:

  1. Rufen Sie die Richtlinien-Tags für die Taxonomie auf, die das entsprechende Richtlinien-Tag enthält.

  2. Ermitteln Sie das Richtlinien-Tag, dessen Ressourcennamen Sie kopieren möchten.

  3. Klicken Sie auf das Symbol Ressourcenname des Richtlinien-Tags kopieren.

    Ressourcennamen kopieren.

Richtlinien-Tags entfernen

Zum Entfernen eines Richtlinien-Tags von einer Spalte müssen Sie das Tabellenschema ändern. Um ein Richtlinien-Tag von einer Spalte zu entfernen, können Sie die Google Cloud Console, das bq-Befehlszeilentool und die BigQuery API-Methode verwenden.

Console

Klicken Sie auf der Seite Aktuelles Schema unter Richtlinien-Tags auf X.

Richtlinien-Tag entfernen.

bq

  1. Rufen Sie das Schema ab und speichern Sie es in einer lokalen Datei.

    bq show --schema --format=prettyjson \
       project-id:dataset.table > schema.json
    

    Dabei gilt:

    • project-id ist die Projekt-ID.
    • dataset ist der Name des Datasets, das die zu aktualisierende Tabelle enthält.
    • table ist der Name der Tabelle, die Sie aktualisieren.
  2. Ändern Sie "schema.json", um ein Richtlinien-Tag von einer Spalte zu entfernen.

    [
     ...
     {
       "name": "ssn",
       "type": "STRING",
       "mode": "REQUIRED",
       "policyTags": {
         "names": []
       }
     },
     ...
    ]
    
  3. Aktualisieren Sie das Schema.

    bq update \
       project-id:dataset.table schema.json
    

API

Rufen Sie tables.patch auf und verwenden Sie das Attribut schema, um in der Schemadefinition ein Richtlinien-Tag zu entfernen. Das Beispielschema für die Befehlszeile zeigt, wie Sie ein Richtlinien-Tag entfernen.

Da die Methode tables.update die gesamte Tabellenressource ersetzt, ist die Methode tables.patch zu bevorzugen.

Richtlinien-Tags löschen

Sie können ein oder mehrere Richtlinien-Tags in einer Taxonomie oder die Taxonomie und alle darin enthaltenen Richtlinien-Tags löschen. Beim Löschen eines Richtlinien-Tags wird automatisch die Verknüpfung zwischen dem Richtlinien-Tag und allen Spalten entfernt, auf die es angewendet wurde.

Wenn Sie ein Richtlinien-Tag löschen, dem eine Datenrichtlinie zugeordnet ist, kann es bis zu 30 Minuten dauern, bis auch die Datenrichtlinie gelöscht wird. Sie können die Datenrichtlinie direkt löschen, wenn Sie sie sofort löschen möchten.

So löschen Sie ein oder mehrere Richtlinien-Tags in einer Taxonomie:

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf den Namen der Taxonomie, die die zu löschenden Tags enthält.
  3. Klicken Sie auf Bearbeiten.
  4. Klicken Sie neben den zu löschenden Richtlinien-Tags auf .
  5. Klicken Sie auf Speichern.
  6. Klicken Sie auf Bestätigen.

So löschen Sie eine gesamte Taxonomie:

  1. Öffnen Sie in der Google Cloud Console die Seite Richtlinien-Tag-Taxonomien.

    Zur Seite "Richtlinien-Tag-Taxonomien"

  2. Klicken Sie auf den Namen der Taxonomie, die die zu löschenden Tags enthält.
  3. Klicken Sie auf Richtlinien-Tag-Taxonomie löschen.
  4. Geben Sie den Namen der Taxonomie ein und klicken Sie auf Löschen.

Daten mit Zugriffssteuerung auf Spaltenebene abfragen

Wenn ein Nutzer Zugriff auf Datasets und die Data Catalog-Rolle "Detaillierter Lesezugriff" hat, sind die Spaltendaten für den Nutzer verfügbar. Der Nutzer führt dann wie gewohnt eine Abfrage aus.

Wenn ein Nutzer Zugriff auf Datasets hat, aber nicht die Data Catalog-Rolle "Detaillierter Lesezugriff", sind die Spaltendaten für den Nutzer nicht verfügbar. Wenn dieser SELECT * ausführt, wird eine Fehlermeldung zurückgegeben, in der die Spalten aufgelistet sind, auf die er nicht zugreifen kann. Diesen Fehler können Sie so beheben:

  • Ändern Sie die Abfrage so, dass die Spalten ausgeschlossen sind, auf die der Nutzer nicht zugreifen kann. Wenn der Nutzer beispielsweise keinen Zugriff auf die Spalte ssn, aber Zugriff auf die übrigen Spalten hat, kann er folgende Abfrage ausführen:

    SELECT * EXCEPT (ssn) FROM ...
    

    Im vorherigen Beispiel wird mit der Klausel EXCEPT die Spalte ssn ausgeschlossen.

  • Bitten Sie einen Data Catalog-Administrator, den Nutzer zusammen mit der Data Catalog-Rolle "Detaillierter Lesezugriff" der entsprechenden Datenklasse hinzuzufügen. Die Fehlermeldung enthält den vollständigen Namen des Richtlinien-Tags, für das der Nutzer Zugriffsrechte benötigt.

FAQ

Funktioniert die BigQuery-Sicherheit auf Spaltenebene auch für Ansichten?

Ja. Ansichten werden aus einer zugrunde liegenden Tabelle abgeleitet. Wenn auf geschützte Spalten über eine Ansicht zugegriffen wird, gilt dafür dieselbe Zugriffssteuerung auf Spaltenebene, die für die Tabelle gilt.

In BigQuery gibt es zwei Arten von Ansichten: logische und autorisierte Ansichten. Bei beiden Typen wird die Ansicht aus einer Quelltabelle abgeleitet und bei beiden gilt auch die Zugriffssteuerung der Tabelle auf Spaltenebene.

Funktioniert die Zugriffssteuerung auf Spaltenebene auch bei STRUCT- oder RECORD-Spalten?

Ja. Sie können allerdings Richtlinien-Tags nur auf die Blattfelder anwenden. Nur diese Felder sind geschützt.

Kann ich sowohl Legacy-SQL als auch GoogleSQL verwenden?

Sie können mit GoogleSQL Tabellen abfragen, die durch Zugriffssteuerung auf Spaltenebene geschützt sind.

Alle Legacy-SQL-Abfragen werden abgelehnt, wenn die Zieltabellen Richtlinien-Tags enthalten.

Werden Abfragen in Logs von Cloud Logging erfasst?

Die IAM-Prüfung von Richtlinien-Tags wird in Logging protokolliert. Weitere Informationen zur Zugriffssteuerung auf Spaltenebene finden Sie unter Audit-Logging.

Wirkt sich die Zugriffssteuerung auf Spaltenebene auf das Kopieren einer Tabelle aus?

Ja. Sie können keine Spalten kopieren, auf die Sie keinen Zugriff haben.

Bei folgenden Vorgängen wird geprüft, ob die erforderlichen Berechtigungen auf Spaltenebene vorliegen:

Werden die Richtlinien-Tags automatisch übertragen, wenn ich Daten in eine neue Tabelle kopiere?

In den meisten Fällen nicht. Wenn Sie die Ergebnisse einer Abfrage in eine neue Tabelle kopieren, werden der neuen Tabelle nicht automatisch Richtlinien-Tags zugewiesen. Die neue Tabelle hat also keine Zugriffssteuerung auf Spaltenebene. Das ist auch der Fall, wenn Sie Daten nach Cloud Storage exportieren.

Davon ausgenommen sind Tabellenkopierjobs. Da es bei Tabellenkopierjobs zu keiner Datentransformation kommt, werden die Richtlinien-Tags automatisch für die Zieltabellen übernommen.

Ist die Zugriffssteuerung auf Spaltenebene mit Virtual Private Cloud kompatibel?

Ja. Die Zugriffssteuerung auf Spaltenebene und VPC sind miteinander kompatibel und ergänzen sich.

VPC verwendet IAM, um den Zugriff auf Dienste wie BigQuery und Cloud Storage zu steuern. Die Zugriffssteuerung auf Spaltenebene bietet darüber hinaus eine detaillierte Sicherheitseinstellung für einzelne Spalten in BigQuery.

Wenn Sie die VPC für Richtlinien-Tags und Datenrichtlinien für die Zugriffssteuerung auf Spaltenebene und die dynamische Datenmaskierung erzwingen möchten, müssen Sie die folgenden APIs im Perimeter einschränken:

Fehlerbehebung

Es werden keine Data Catalog-Rollen angezeigt.

Wenn keine Data Catalog-Rollen wie "Detaillierter Lesezugriff" angezeigt werden, kann es sein, dass Sie die Data Catalog API nicht in Ihrem Projekt aktiviert haben. Unter Vorbereitung ist angegeben, wie Sie die Data Catalog API aktivieren. Die Data Catalog-Rollen müssten einige Minuten nach dem Aktivieren der Data Catalog API angezeigt werden.

Ich kann die Seite für die Taxonomien nicht aufrufen.

Zum Aufrufen der Seite Taxonomien benötigen Sie zusätzliche Berechtigungen. Beispielsweise ermöglicht die Data Catalog-Rolle Richtlinien-Tag-Administrator den Zugriff auf die Seite Taxonomien.

Ich habe Richtlinien-Tags erzwungen, aber es scheint nicht zu funktionieren.

Wenn Sie weiterhin Abfrageergebnisse für ein Konto erhalten, das keinen Zugriff mehr haben sollte, sind das möglicherweise Ergebnisse aus dem Cache. Insbesondere wenn Sie die Abfrage zuvor erfolgreich ausgeführt und dann Richtlinien-Tags erzwungen haben, erhalten Sie möglicherweise Ergebnisse aus dem Cache mit Abfrageergebnissen. Abfrageergebnisse werden standardmäßig 24 Stunden lang im Cache gespeichert. Die Abfrage sollte sofort fehlschlagen, wenn Sie den Ergebnis-Cache deaktivieren. Weitere Informationen zum Caching finden Sie unter Auswirkungen der Zugriffssteuerung auf Spaltenebene.

Im Allgemeinen dauert es etwa 30 Sekunden, bis Aktualisierungen für IAM ausgeführt werden. Änderungen an der Richtlinien-Tag-Hierarchie müssten nach maximal 30 Minuten wirksam werden.