IAM-Zugriff basierend auf der Datensensibilität steuern

Auf dieser Seite wird beschrieben, wie Sie den IAM-Zugriff (Identity and Access Management) auf Ressourcen automatisch gewähren oder verweigern können, je nach der Vertraulichkeit der Daten in diesen Ressourcen.

Sie können den Dienst zum Entdecken von vertraulichen Daten so konfigurieren, dass Ressourcen automatisch basierend auf den berechneten Sensibilitätsgraden dieser Ressourcen getaggt werden. Anschließend können Sie mithilfe von IAM-Bedingungen den Zugriff auf eine Ressource gewähren oder verweigern, je nachdem, ob ein Tag-Schlüssel oder -Wert für die Empfindlichkeitsstufe vorhanden ist oder nicht.

Angenommen, Sie möchten, dass das Datenteam Ihres Unternehmens BigQuery-Daten bei seiner täglichen Arbeit frei kopieren und freigeben kann. Sie wissen jedoch nicht, ob diese Daten personenidentifizierbare Informationen (PII) Ihrer Kunden enthalten. Sie können eine explorative Datenanalyse ausführen, um die Sensibilitätsstufen Ihrer BigQuery-Daten zu klassifizieren. Gewähren Sie dem Datenteam dann bedingt Zugriff, sodass es nur auf BigQuery-Tabellen mit Daten mit geringer Sensibilität zugreifen kann.

Weitere Informationen dazu, wie die Vertraulichkeit von Daten im Rahmen des Schutzes sensibler Daten berechnet wird, finden Sie unter Datenrisiko- und Vertraulichkeitsstufen.

Weitere Informationen zur Verwendung von Tags zur Steuerung des Zugriffs auf Ressourcen finden Sie in der IAM-Dokumentation unter Tags und bedingter Zugriff. Allgemeine Informationen zu Tags finden Sie in der Resource Manager-Dokumentation unter Tags – Übersicht.

Tag für die Empfindlichkeitsstufe

In diesem Dokument wird der Begriff Tag für die Vertraulichkeitsstufe verwendet, um ein Tag zu bezeichnen, das Sie automatisch an eine Ressource anhängen, um die berechnete Vertraulichkeitsstufe der Daten in dieser Ressource anzugeben.

Vorteile

Mit dieser Funktion haben Sie folgende Möglichkeiten:

  • Automatisieren Sie die Zugriffssteuerung für verschiedene unterstützte Ressourcen basierend auf Attributen und Klassifizierungen der Daten in diesen Ressourcen. Mithilfe von Automatisierung können Sie mit dem Wachstum und den Änderungen der Daten in Ihrer Organisation, Ihren Ordnern und Ihren Projekten Schritt halten.
  • Zugriff auf die unterstützten Ressourcen einschränken, bis diese Ressourcen profiliert und gemäß dem Schutz sensibler Daten klassifiziert wurden. Diese Praxis entspricht dem Prinzip Standardmäßig sicher.
  • Konfigurieren Sie die Datenerkennung so, dass der Tag-Wert für die Datensensibilität jedes Mal aktualisiert wird, wenn Ihre Daten profiliert werden. Daher ändert sich der Zugriff eines Prinzipals auf eine Ressource automatisch, wenn sich die berechnete Datensensitivitätsstufe für diese Ressource ändert.
  • Konfigurieren Sie die Datenerkennung so, dass das berechnete Datenrisiko für eine Ressource gesenkt wird, wenn bei der Datenerkennung ein Tag für die Vertraulichkeitsstufe für diese Ressource erkannt wird. Mit dieser Option können Sie die Verbesserung Ihrer Datensicherheit und Ihres Datenschutzes messen.

Unterstützte Ressourcen

Mit dieser Funktion werden Daten mit Sensitive Data Protection automatisch auf den folgenden Ebenen getaggt:

  • BigQuery-Tabellen
  • Cloud SQL-Instanzen
  • Cloud Storage-Buckets

Funktionsweise

Im Folgenden finden Sie einen allgemeinen Workflow zum Steuern des Zugriffs auf Ressourcen basierend auf der Datensensibilität. Diese Aufgaben müssen nicht von derselben Person ausgeführt werden.

  1. Tag für die Vertraulichkeitsstufe erstellen
  2. Bedingten Zugriff auf Ressourcen gewähren, basierend auf dem Wert des Tags für die Sensibilitätsstufe
  3. Automatisches Tagging in der Discovery-Konfiguration aktivieren
  4. Dem Kundenservicemitarbeiter die Berechtigung erteilen, das Tag für den Datenschutzgrad an Ressourcen anzuhängen

Erforderliche Berechtigungen

Welche Berechtigungen Sie benötigen, hängt von der auszuführenden Aktion ab.

Um diese Berechtigungen zu erhalten, bitten Sie Ihren Administrator, die vorgeschlagene Rolle auf der entsprechenden Ebene der Ressourcenhierarchie zu gewähren.

Berechtigungen zum Verwalten von Tags

Weitere Informationen finden Sie in der Resource Manager-Dokumentation unter Tags verwalten.

Berechtigungen zum Gewähren bedingten Zugriffs auf Ressourcen

Weitere Informationen finden Sie in der IAM-Dokumentation unter Erforderliche Rollen.

Berechtigungen zum Konfigurieren der Erkennung

Weitere Informationen finden Sie unter Rollen, die zum Konfigurieren und Aufrufen von Datenprofilen erforderlich sind.

Tag für die Empfindlichkeitsstufe erstellen

In dieser Aufgabe erstellen Sie einen Tag-Schlüssel mit Tag-Werten, die den Stufen der Datensensibilität zugeordnet sind, die mit Sensitive Data Protection zur Klassifizierung Ihrer Daten verwendet werden. Sie können beispielsweise den folgenden Tag-Schlüssel und die folgenden Tag-Werte verwenden.

  1. Legen Sie den Tag-Schlüssel auf sensitivity-level fest.
  2. Legen Sie die folgenden Tag-Werte fest:

    low
    Tag-Wert, der an Daten mit geringer Vertraulichkeit angehängt werden soll
    moderate
    Tag-Wert, der Daten mit mäßiger Vertraulichkeit zugewiesen wird
    high
    Tag-Wert, der an Daten mit hoher Vertraulichkeit angehängt werden soll

    Sie können auch einen Tag-Wert für Ressourcen mit unbekannter Vertraulichkeitsstufe erstellen. Alternativ können Sie einen der Tag-Werte low, medium oder high für diese Ressourcen wiederverwenden.

  3. Beachten Sie Folgendes: Sie benötigen diese Informationen für die nächste Aufgabe:

    • Tag-Schlüssel-ID, z. B. tagKeys/281478077849901
    • Tag-Schlüsselwerte, z. B. tagValues/281479490918432
    • Tagwertpfade, z. B. example-project/tag-key/tag-value1

Zur Vereinfachung wird in diesem Beispiel eine Eins-zu-Eins-Zuordnung zwischen einem Tag-Wert und einem Sensitivitätsgrad festgelegt. In der Praxis können Sie die Tag-Werte an Ihre geschäftlichen Anforderungen anpassen. Sie können beispielsweise Werte wie confidential, PII oder SPII (sensible PII) verwenden.

Die Erkennung sensibler Daten kann auf Organisations-, Ordner- und Projektebene konfiguriert werden. Wenn Sie dieses Tag für die Datenerhebung auf Organisations- oder Ordnerebene verwenden möchten, empfehlen wir, es auf Organisationsebene zu erstellen.

Informationen zum Erstellen eines Tags finden Sie in der Resource Manager-Dokumentation unter Tags erstellen und verwalten.

Bedingten Zugriff auf Ressourcen gewähren, basierend auf dem Wert des Tags für die Sensibilitätsstufe

In dieser Aufgabe gewähren Sie einem Hauptkonto nur dann eine Rolle, wenn das Tag für die Sensibilitätsstufe, das der Ressource zugewiesen ist, einen bestimmten Wert hat. So können Sie einem Nutzer beispielsweise nur Zugriff auf Daten mit den Tag-Werten moderate und low gewähren.

Dieser Abschnitt enthält Beispielbedingungen, die für die Verwendung mit dem Bedingungseditor formatiert sind. Der Bedingungseditor bietet eine textbasierte Oberfläche zur manuellen Eingabe eines Ausdrucks mit der CEL-Syntax. Informationen zum Anhängen von IAM-Bedingungen an Rollenbindungen finden Sie in der IAM-Dokumentation unter Bedingte Rollenbindungen verwalten.

Diese Beispiele folgen dem Tagging-Modell, das auf dieser Seite unter Tag für den Datenschutzpegel erstellen definiert ist.

Hauptkonten nur Zugriff auf Daten mit geringem Schutzbedarf gewähren

In diesem Beispiel gewähren Sie Zugriff auf eine Ressource, wenn sie nur Daten mit geringer Sensibilität enthält. Mit diesem Beispiel können Sie auch den gesamten Zugriff auf die Ressource einschränken, bis die Suche nach sensiblen Daten für diese Ressource ausgeführt wurde.

resource.matchTagId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY",
"tagValues/TAG_VALUE_FOR_LOW_SENSITIVITY")

Ersetzen Sie Folgendes:

  • SENSITIVITY_LEVEL_TAG_KEY: Die numerische ID des von Ihnen erstellten Tag-Schlüssels für die Sensibilitätsstufe
  • TAG_VALUE_FOR_LOW_SENSITIVITY: Die numerische ID des Tag-Werts, den Sie für Daten mit geringer Sensibilität erstellt haben

Prinzipalen nur Zugriff auf Daten mit mäßiger und geringer Vertraulichkeit gewähren

In diesem Beispiel gewähren Sie Zugriff auf eine Ressource, wenn sie nur Daten mit mäßiger oder geringer Vertraulichkeit enthält. Beachten Sie, dass sich zwischen den beiden Bedingungen der Operator OR befindet.

resource.matchTagId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY", "tagValues/TAG_VALUE_FOR_LOW_SENSITIVITY") ||
resource.matchTagId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY", "tagValues/TAG_VALUE_FOR_MODERATE_SENSITIVITY")

Ersetzen Sie Folgendes:

  • SENSITIVITY_LEVEL_TAG_KEY: Die numerische ID des von Ihnen erstellten Tag-Schlüssels für die Sensibilitätsstufe
  • TAG_VALUE_FOR_LOW_SENSITIVITY: Die numerische ID des Tag-Werts, den Sie für Daten mit geringer Sensibilität erstellt haben
  • TAG_VALUE_FOR_MODERATE_SENSITIVITY: Die numerische ID des Tag-Werts, den Sie für Daten mit mäßiger Sensibilität erstellt haben

Hauptkonten nur Zugriff gewähren, wenn das Tag für die Sensibilitätsstufe vorhanden ist

Das ist beispielsweise nützlich, wenn Sie eine Organisationsrichtlinie definieren möchten, die vorschreibt, dass der gesamte IAM-Zugriff bedingt auf das Vorhandensein eines Tags für die Sicherheitsstufe erfolgen muss. Mit diesem Beispiel können Sie auch den gesamten Zugriff auf die Ressource einschränken, bis die Suche nach sensiblen Daten für diese Ressource ausgeführt wurde.

resource.hasTagKeyId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY")

Ersetzen Sie SENSITIVITY_LEVEL_TAG_KEY durch die numerische ID des Tags für die Sensibilitätsstufe, das Sie erstellt haben.

Beispiele für Ablehnungsrichtlinien

Informationen zum Erstellen einer Ablehnungsrichtlinie für die Verwendung mit einem Ressourcen-Tag finden Sie unter Struktur einer Ablehnungsrichtlinie. Eine Liste der unterstützten Berechtigungen finden Sie unter In Ablehnungsrichtlinien unterstützte Berechtigungen.

Zugriff verweigern, wenn kein Tag für die Sensibilitätsstufe vorhanden ist

Im folgenden Auszug aus einer Ablehnungsrichtlinie wird die Berechtigung bigquery.googleapis.com/tables.get abgelehnt, wenn die Ressource nicht das Tag für den Sensibilitätsgrad hat.

  "rules": [
    {
      "denyRule": {
        "deniedPrincipals": [
          "principalSet://goog/group/data-team@example.com"
        ],
        "deniedPermissions": [
          "bigquery.googleapis.com/tables.get"
        ],
        "denialCondition": {
          "title": "Resource has no key",
          "expression": "!resource.hasTagKeyId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY")"
        }
      }
    }
  ]

Ersetzen Sie SENSITIVITY_LEVEL_TAG_KEY durch die numerische ID des Tags für die Sensibilitätsstufe, das Sie erstellt haben.

Zugriff verweigern, wenn Daten mit mittlerer oder hoher Sensibilität vorhanden sind

Im folgenden Auszug aus einer Ablehnungsrichtlinie wird die Berechtigung bigquery.googleapis.com/tables.get abgelehnt, wenn die Ressource Daten mit mäßiger oder hoher Vertraulichkeit enthält.

  "rules": [
    {
      "denyRule": {
        "deniedPrincipals": [
          "principalSet://goog/group/data-team@example.com"
        ],
        "deniedPermissions": [
          "bigquery.googleapis.com/tables.get"
        ],
        "denialCondition": {
          "title": "Resource has moderate or high data sensitivity",
          "expression": "resource.matchTagId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY", "tagValues/TAG_VALUE_FOR_MODERATE_SENSITIVITY") || resource.matchTagId("tagKeys/SENSITIVITY_LEVEL_TAG_KEY", "tagValues/TAG_VALUE_FOR_HIGH_SENSITIVITY")"
        }
      }
    }
  ]

Ersetzen Sie Folgendes:

  • SENSITIVITY_LEVEL_TAG_KEY: Die numerische ID des von Ihnen erstellten Tag-Schlüssels für die Sensibilitätsstufe
  • TAG_VALUE_FOR_MODERATE_SENSITIVITY: Die numerische ID des Tag-Werts, den Sie für Daten mit mäßiger Sensibilität erstellt haben
  • TAG_VALUE_FOR_HIGH_SENSITIVITY: Die numerische ID des Tag-Werts, den Sie für hochsensible Daten erstellt haben

Automatisches Tagging in der Erkennungskonfiguration aktivieren

In dieser Aufgabe aktivieren Sie die Aktion Ressourcen taggen. Durch diese Aktion werden Ihre Daten automatisch gemäß der berechneten Vertraulichkeitsstufe getaggt. Sie führen diese Aufgabe aus, wenn Sie eine create oder bearbeiten.

So taggen Sie eine Ressource automatisch entsprechend dem berechneten Sensibilitätsgrad:

  1. Aktivieren Sie die Option Ressourcen taggen.
  2. Geben Sie für jede Empfindlichkeitsstufe (hoch, mittel, niedrig und unbekannt) den Pfad des Tag-Werts ein, den Sie für die jeweilige Empfindlichkeitsstufe erstellt haben.

    Wenn Sie eine Vertraulichkeitsstufe überspringen, wird kein Tag dafür angehängt.

  3. Wenn das Datenrisiko einer Ressource automatisch gesenkt werden soll, wenn das Tag für die Empfindlichkeitsstufe vorhanden ist, wählen Sie Beim Anwenden eines Tags auf eine Ressource das Datenrisiko ihres Profils auf NIEDRIG setzen aus. Mit dieser Option können Sie die Verbesserung Ihrer Datensicherheit und Ihres Datenschutzes messen.

  4. Klicke auf den Schalter neben einer oder beiden der folgenden Optionen, um sie zu deaktivieren:

    • Ressource taggen, wenn zum ersten Mal ein Profil für sie erstellt wird.
    • Ressource taggen, wenn ihr Profil aktualisiert wird. Wählen Sie diese Option aus, wenn der Wert des Tags für die Sensibilitätsstufe bei nachfolgenden Erkennungsläufen durch den Sensitive Data Protection-Filter überschrieben werden soll. Daher ändert sich der Zugriff eines Prinzipals auf eine Ressource automatisch, wenn der berechnete Datensensiblegrad für diese Ressource steigt oder sinkt.

      Wählen Sie diese Option nicht aus, wenn Sie die Tag-Werte auf Vertraulichkeitsebene, die der Discovery-Dienst Ihren Ressourcen zugewiesen hat, manuell aktualisieren möchten. Wenn Sie diese Option auswählen, können Ihre manuellen Updates durch den Schutz sensibler Daten überschrieben werden.

Die Erkennung sensibler Daten kann auf Organisations-, Ordner- und Projektebene konfiguriert werden. Wenn Sie dieses Tag für die Datensensitivität für die Datenermittlung auf Organisationsebene verwenden möchten und nicht möchten, dass die Tag-Werte, die durch die Datenermittlung auf Organisationsebene festgelegt werden, durch die Datenermittlung auf Projektebene überschrieben werden, achten Sie darauf, dass nur der Dienstagent der Datenermittlungskonfiguration auf Organisationsebene dieses Tag an Ressourcen anhängen kann. Informationen zum Zuweisen einer Rolle auf Tag-Ebene finden Sie in der Resource Manager-Dokumentation unter Zugriff auf Tags verwalten.

Fehler beheben

In diesem Abschnitt werden Fehler beschrieben, die bei der Verwendung dieser Funktion auftreten können, und es wird erläutert, wie Sie diese beheben.

Maximale Anzahl von Tags überschritten

An jede Ressource können maximal 50 Schlüssel/Wert-Paare angehängt werden. Wenn Sie versuchen, eine Ressource zu taggen, die bereits die maximale Anzahl von Tags hat, schlägt die Profilgenerierung fehl. Sie erhalten die folgende Fehlermeldung:

The resource RESOURCE_NAME cannot be tagged because there are
too many existing tags bound to the resource. You can either disable automatic
tagging or delete at least one tag binding from the resource.

Trennen Sie ein Tag von der Ressource, um das Problem zu beheben. Hier finden Sie weitere Informationen:

Alternativ können Sie die Aktion Ressourcen taggen in der Konfiguration des Erkennungsscans deaktivieren.

Ein Tag-Wert wurde gelöscht oder umbenannt und bei der Discovery wurde versucht, ihn an eine Ressource anzuhängen.

Wenn ein Tag-Wert für das Tag „Vertraulichkeitsstufe“ gelöscht oder umbenannt wird und der Schutz sensibler Daten versucht, diesen Tag-Wert an eine profilierte Ressource anzuhängen, wird der folgende Fehler ausgegeben:

Tag value TAG_VALUE not found, it has possibly been either deleted or renamed.

Führen Sie einen der folgenden Schritte aus, um das Problem zu lösen:

  • Wenn das Tag gelöscht wurde, erstellen Sie den gelöschten Tag-Wert neu. Achten Sie darauf, dass der neu erstellte Tag-Wert mit dem Tag-Wert übereinstimmt, auf den in der Konfiguration des Discovery-Scans verwiesen wird. Weitere Informationen finden Sie auf dieser Seite unter Tag für die Sensibilitätsstufe erstellen.
  • Wenn der Tag-Wert umbenannt wurde, aktualisieren Sie die Konfiguration des Discovery-Scans, damit der neue Name des Tag-Werts verwendet wird.

Dem Dienst-Agent fehlen Berechtigungen

Wenn der Dienst-Agent nicht die Berechtigungen hat, die zum Anhängen des Tags für die Sensibilitätsstufe an die profilierten Ressourcen erforderlich sind, wird der folgende Fehler angezeigt:

The DLP service account SERVICE_AGENT_NAME is missing
permissions needed for attaching tags to resources. Check that the role
'resourcemanager.tagUser' is granted to the DLP service account.

Führen Sie die folgenden Schritte aus, um das Problem zu beheben:

  1. Rufen Sie die Dienst-Agent-ID ab, die mit Ihrer Konfiguration für den Erkennungsscan verknüpft ist:

    1. Rufen Sie die Liste der Konfigurationen für die explorative Datenanalyse auf.

      Konfigurationen für die Suche

    2. Wählen Sie Ihre Scankonfiguration aus.
    3. Kopieren Sie auf der daraufhin angezeigten Detailseite die Service-Agent-ID. Diese ID hat das Format einer E-Mail-Adresse.
  2. Weisen Sie dem Kundenservicemitarbeiter die Rolle Tag-Nutzer (roles/resourcemanager.tagUser) für das Tag „Sensitivitätsstufe“ zu.

    Alternativ können Sie dem Tag für die Empfindlichkeitsstufe eine benutzerdefinierte Rolle zuweisen. Die benutzerdefinierte Rolle muss die Berechtigung resourcemanager.tagValues.get und ressourcenspezifische Berechtigungen zum Verwalten von Tag-Bindungen haben. Sie benötigen die ressourcenspezifischen Berechtigungen createTagBinding, deleteTagBinding und listEffectiveTags. Für BigQuery-Tabellen benötigen Sie beispielsweise Folgendes:

    • resourcemanager.tagValues.get
    • bigquery.tables.createTagBinding
    • bigquery.tables.deleteTagBinding
    • bigquery.tables.listEffectiveTags

    Informationen zum Zuweisen einer Rolle auf Tag-Ebene finden Sie in der Resource Manager-Dokumentation unter Zugriff auf Tags verwalten.

Nächste Schritte