Anzeigen und Verfolgen der Ergebnisse der Klassifizierung sensibler Daten

In diesem Thema wird beschrieben, wie Sie die Ergebnisse der Klassifizierung sensibler Daten anzeigen und verfolgen und wie Sie Klassifizierungs-Tags verfolgen können, um sensible Daten zu überwachen.

Verwenden des Trust Centers, um die Ergebnisse der Klassifizierung anzuzeigen

Um die Ergebnisse der Klassifizierung sensibler Daten im Trust Center anzuzeigen, führen Sie die folgenden Schritte aus:

  1. Melden Sie sich bei Snowsight als Benutzer mit den erforderlichen Berechtigungen an.

  2. Wählen Sie im Navigationsmenü die Option Governance & security » Trust Center aus.

  3. Wählen Sie die Registerkarte Data Security aus.

  4. Führen Sie eine der folgenden Aktionen aus:

    • Wenn Sie einen umfassenden Einblick in die Sicherheit Ihrer sensiblen Daten erhalten möchten, wählen Sie die Registerkarte Dashboard aus. Weitere Informationen dazu finden Sie unter Überprüfen der Dashboard-Seite.

    • Wenn Sie alle Tabellen und Ansichten auflisten möchten, die als sensible Daten eingestuft wurden, wählen Sie die Registerkarte Sensitive objects aus.

      Wenn sich die Seite öffnet, wählen Sie eine Tabelle aus, um zu sehen, welche Spalten sensible Daten enthalten, die semantische Kategorie dieser Spalten und ob Tags auf die Spalten angewendet wurden.

Überprüfen der Dashboard-Seite

Die Dashboard-Seite bietet allgemeine Einblicke in die Sicherheit Ihrer sensiblen Daten, z. B. wie viele Datenbanken und Tabellen klassifiziert wurden. Die Seite enthält die folgenden Kacheln:

Kachel

Beschreibung

Objects by compliance category

Identifiziert die Anzahl der Objekte, die Daten enthalten, die je nach Art der Informationen im Objekt einer Vorschrift oder einem anderen Compliance-Standard unterliegen könnten.

Bemerkung

Die Zuordnung zwischen einer Konformitätskategorie und semantischen Kategorien erhebt keinen Anspruch auf Vollständigkeit. Nur von Snowflake unterstützte native semantische Kategorien werden einer Konformitätskategorie zugeordnet. Die vollständige Zuordnung finden Sie unter Konformitätskategorien und deren semantische Kategorien.

Es liegt allein bei Ihnen, festzustellen, welche Vorschriften oder Gesetze für Ihre Daten gelten, und für die Sicherstellung der Einhaltung der geltenden Vorschriften oder Gesetze zu sorgen.

Objects by semantic category

Identifiziert die häufigsten semantischen Kategorien und die Anzahl der Objekte, die Daten enthalten, die zu diesen Kategorien gehören.

Databases monitored by auto-classification

Gibt an, welche Datenbanken derzeit durch die Klassifizierung sensibler Daten überwacht werden. Eine Datenbank wird teilweise überwacht, wenn jemand SQL verwendet hat, um ein Klassifizierungsprofil direkt für ein Schema in der Datenbank festzulegen, anstatt das Profil auf Datenbankebene festzulegen.

Classification status

Gibt an, ob alle Datenbanken, die derzeit auf sensible Daten überwacht werden, klassifiziert wurden.

Sensitive data masking status

Gibt an, ob sensible Daten durch eine -Maskierungsrichtlinie geschützt sind. Die Maskierungsrichtlinie kann eine Tag-basierte Richtlinie sein oder eine Maskierungsrichtlinie, die manuell auf die Spalte angewendet wurde.

Eine Tabelle ist vollständig maskiert, wenn jeder Spalte, die sensible Daten enthält, eine Maskierungsrichtlinie zugeordnet ist. Eine Tabelle ist teilweise maskiert, wenn nur einige Spalten mit sensiblen Daten mit einer Maskierungsrichtlinie verbunden sind.

Konformitätskategorien und deren semantische Kategorien

Bemerkung

Es liegt allein bei Ihnen, festzustellen, welche Vorschriften oder Gesetze für Ihre Daten gelten, und für die Sicherstellung der Einhaltung der geltenden Vorschriften oder Gesetze zu sorgen. Die Konformitätskategorien innerhalb der Klassifizierung sensibler Daten sollen Ihnen ein sofort einsatzbereites Toolkit zu Ihrer Unterstützung zur Verfügung stellen, sind aber nicht vollständig. Nur die von Snowflake unterstützten nativen semantischen Kategorien sind einer Konformitätskategorie zugeordnet.

Warnung

HIPAA-Datenanforderungen verlangen, dass abgedeckte Entitäten und Geschäftspartner die Vertraulichkeit, Integrität und Verfügbarkeit von geschützten Gesundheitsinformationen (PHI) durch strenge administrative, physische und technische Schutzmaßnahmen schützen. Die Nichteinhaltung von HIPAA kann zu erheblichen Strafen führen. Semantische Kategorien in Bezug auf PHI sind in Sensible Informationen enthalten.

Verwenden Sie die folgende Tabelle, um die Kachel Objects by compliance category auf der Dashboard-Seite zu verstehen.

Konformitätskategorie

Native semantische Kategorie

Gebietsschema

Gesetz zum Schutz personenbezogener Daten (DPDPA)

DATE_OF_BIRTH

k.A.

DRIVERS_LICENSE

Indien (IN)

EMAIL

k.A.

NAME

k.A.

NATIONAL_IDENTIFIER

Indien (IN)

PHONE_NUMBER

k.A.

STREET_ADDRESS

k.A.

TAX_IDENTIFIER

Indien (IN)

Datenschutz-Grundverordnung (DSGVO/GDPR)

AGE

k.A.

DRIVERS_LICENSE

Österreich (AT), Belgien (BE), Bulgarien (BG), Kroatien (HR), Zypern (CY), Tschechische Republik (CZ), Dänemark (DK), Estland (EE), Finnland (FI), Frankreich (FR), Deutschland (DE), Griechenland (GR), Ungarn (HU), Irland (IE), Italien (IT), Lettland (LV), Litauen (LT), Luxemburg (LU), Malta (MT), Niederlande (NL), Polen (PL), Portugal (PT), Rumänien (RO), Slowakei (SK), Slowenien (SI), Spanien (ES), Schweden (SE)

EMAIL

k.A.

ETHNICITY

k.A.

GENDER

k.A.

IBAN

k.A.

IMEI

k.A.

IP_ADDRESS

k.A.

NAME

k.A.

NATIONAL_IDENTIFIER

Österreich (AT), Belgien (BE), Bulgarien (BG), Kroatien (HR), Zypern (CY), Tschechische Republik (CZ), Dänemark (DK), Estland (EE), Finnland (FI), Frankreich (FR), Deutschland (DE), Griechenland (GR), Ungarn (HU), Irland (IE), Lettland (LV), Litauen (LT), Luxemburg (LU), Malta (MT), Niederlande (NL), Polen (PL), Portugal (PT), Rumänien (RO), Slowakei (SK), Slowenien (SI), Spanien (ES), Schweden (SE), Großbritannien (UK)

PASSPORT

Österreich (AT), Belgien (BE), Bulgarien (BG), Kroatien (HR), Zypern (CY), Tschechische Republik (CZ), Dänemark (DK), Estland (EE), Finnland (FI), Frankreich (FR), Deutschland (DE), Griechenland (GR), Ungarn (HU), Irland (IE), Italien (IT), Lettland (LV), Litauen (LT), Luxemburg (LU), Malta (MT), Niederlande (NL), Polen (PL), Portugal (PT), Rumänien (RO), Slowakei (SK), Slowenien (SI), Spanien (ES), Schweden (SE)

PAYMENT_CARD

k.A.

PHONE_NUMBER

k.A.

SALARY

k.A.

TAX_IDENTIFIER

Österreich (AT), Zypern (CY), Frankreich (FR), Deutschland (DE), Griechenland (GR), Ungarn (HU), Italien (IT), Malta (MT), Niederlande (NL), Polen (PL), Portugal (PT), Slowenien (SI), Spanien (ES), Schweden (SE)

VIN

k.A.

Gramm-Leach-Bliley Act (GLBA)

BANK_ACCOUNT

USA (US)

DRIVERS_LICENSE

USA (US)

NAME

USA (US)

NATIONAL_IDENTIFIER

USA (US)

PASSPORT

USA (US)

PAYMENT_CARD

k.A.

STREET_ADDRESS

USA (US)

TAX_IDENTIFIER

USA (US)

Health Insurance Portability and Accountability Act (HIPAA)

ADMINISTRATIVE_AREA_1

USA (US)

ADMINISTRATIVE_AREA_2

USA (US)

AGE

k.A.

CITY

USA (US)

DATE_OF_BIRTH

k.A.

EMAIL

k.A.

ETHNICITY

k.A.

IMEI

k.A.

IP_ADDRESS

k.A.

MEDICAL_DATA

k.A.

MEDICAL_SPECIALTY

k.A.

NAME

k.A.

NATIONAL_IDENTIFIER

USA (US)

PHONE_NUMBER

USA (US)

POSTAL_CODE

USA (US)

STREET_ADDRESS

USA (US)

URL

k.A.

VIN

k.A.

Payment Card Industry (PCI)

PAYMENT_CARD

k.A.

Persönlich identifizierbare Informationen (PII)

DATE_OF_BIRTH

k.A.

DRIVERS_LICENSE

k.A.

EMAIL

k.A.

NAME

k.A.

NATIONAL_IDENTIFIER

k.A.

PHONE_NUMBER

k.A.

STREET_ADDRESS

k.A.

TAX_IDENTIFIER

k.A.

Verwenden von SQL, um die Ergebnisse der Klassifizierung anzuzeigen

Sie können SQL verwenden, um die Ergebnisse der Datenklassifizierung durch Aufrufen einer Systemfunktion oder Abfragen einer Account Usage-Ansicht anzuzeigen.

Abrufen der Klassifizierungsergebnisse für eine bestimmte Tabelle

Rufen Sie die SYSTEM$GET_CLASSIFICATION_RESULT-Funktion auf, um die Ergebnisse für eine bestimmte Tabelle anzuzeigen.

CALL SYSTEM$GET_CLASSIFICATION_RESULT('mydb.sch.t1');

Die Ergebnisse sind erst verfügbar, wenn der Klassifizierungsprozess abgeschlossen ist. Der automatische Klassifizierungsprozess beginnt erst eine Stunde nach der Einstellung des Klassifizierungsprofils für die Datenbank.

Abfragen der neuesten Klassifizierungsergebnisse

Um die neuesten Klassifizierungsergebnisse anzuzeigen, fragen Sie die Ansicht DATA_CLASSIFICATION_LATEST ab. Klassifizierungsergebnisse vor den neuesten Ergebnissen werden nicht angezeigt. Sie können zum Beispiel eine Rolle verwenden, der die SNOWFLAKE.GOVERNANCE_VIEWER-Datenbankrollen zugewiesen wurde. Andere Berechtigungen können ebenfalls den Zugriff ermöglichen, z. B. die Verwendung von ACCOUNTADMIN oder mit IMPORTED PRIVILEGES für die SNOWFLAKE-Datenbank.

SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_LATEST;

Die Ergebnisse werden möglicherweise erst drei Stunden nach Abschluss der Klassifizierung angezeigt. Informationen zum Anzeigen frühere Klassifizierungsergebnissen finden Sie unter Abfragen des Klassifizierungsverlaufs.

Abfragen des Klassifizierungsverlaufs

Um alle Klassifizierungsereignisse der letzten 365 Tage anzuzeigen, fragen Sie die Ansicht DATA_CLASSIFICATION_HISTORY ab. Sie können zum Beispiel eine Rolle verwenden, der die SNOWFLAKE.GOVERNANCE_VIEWER-Datenbankrollen zugewiesen wurde. Andere Berechtigungen können ebenfalls den Zugriff ermöglichen, z. B. die Verwendung von ACCOUNTADMIN oder mit IMPORTED PRIVILEGES für die SNOWFLAKE-Datenbank.

SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_HISTORY;

Verwenden Sie die folgenden Beispiele, um den Klassifizierungsverlauf abzufragen:

Filtern des Klassifizierungsverlaufs nach Datenbank, Schema und Tabellenname

Das folgende Beispiel gibt alle Klassifizierungsereignisse für eine bestimmte Tabelle zurück, indem nach Datenbankname, Schemaname und Tabellenname gefiltert wird, geordnet vom neuesten bis zum ältesten:

SELECT
    database_id,
    database_name,
    schema_id,
    schema_name,
    table_id,
    table_name,
    trigger_type,
    classified_on,
    table_deleted_on,
    result
  FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_HISTORY
  WHERE database_name = 'MY_DB'
    AND schema_name = 'MY_SCHEMA'
    AND table_name = 'EMPLOYEES'
  ORDER BY classified_on DESC;

Die Ausgabe zeigt zwei Klassifizierungsereignisse für dieselbe EMPLOYEES-Tabelle: Eine manuelle Klassifizierung vom Februar 2025, die die EMAIL-Spalte identifiziert hat, und eine spätere automatische Klassifizierung vom März 2025, die sowohl die EMAIL- als auch die SSN-Spalte identifiziert hat. Die Ergebnisse sind vom neuesten zum ältesten geordnet und zeigen, wie sich die Klassifizierungsergebnisse im Laufe der Zeit entwickeln können.

+-------------+---------------+-----------+-------------+----------+------------+---------------------+---------------------------+----------------+--------------------------------+
| DATABASE_ID | DATABASE_NAME | SCHEMA_ID | SCHEMA_NAME | TABLE_ID | TABLE_NAME | TRIGGER_TYPE        | CLASSIFIED_ON             | TABLE_DELETED_ON | RESULT                         |
+-------------+---------------+-----------+-------------+----------+------------+---------------------+---------------------------+----------------+--------------------------------+
| 10          | MY_DB         | 100       | MY_SCHEMA   | 1234     | EMPLOYEES  | AUTO CLASSIFICATION | 2025-03-01 08:00:00 -0800 | NULL           | {"EMAIL": {...}, "SSN": {...}} |
| 10          | MY_DB         | 100       | MY_SCHEMA   | 1234     | EMPLOYEES  | MANUAL              | 2025-02-15 14:30:00 -0800 | NULL           | {"EMAIL": {...}}               |
+-------------+---------------+-----------+-------------+----------+------------+---------------------+---------------------------+----------------+--------------------------------+

Filtern anhand der Tabellen-ID

Das folgende Beispiel filtert den Klassifizierungsverlauf nach der Tabellen-ID, um alle Klassifizierungsereignisse für eine bestimmte Tabelle zurückzugeben, wobei das neueste zuerst angezeigt wird:

Bemerkung

Filtern nach ID kann nützlich sein, wenn die Tabelle nach der Klassifizierung umbenannt wurde.

SELECT
    database_id,
    database_name,
    schema_id,
    schema_name,
    table_id,
    table_name,
    trigger_type,
    classified_on,
    table_deleted_on,
    result
  FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_HISTORY
  WHERE table_id = 1234
  ORDER BY classified_on DESC;

Die Ausgabe zeigt zwei Klassifizierungsereignisse für dieselbe Tabelle (ID 1234), obwohl die Tabelle zwischen den Ereignissen von EMPLOYEES in EMPLOYEES_NEW umbenannt wurde. Da die Abfrage nach Tabellen-ID und nicht nach Name filtert, werden beide Ereignisse unabhängig von der Namensänderung zurückgegeben.

+-------------+---------------+-----------+-------------+----------+---------------+---------------------+---------------------------+----------------+--------------------------------+
| DATABASE_ID | DATABASE_NAME | SCHEMA_ID | SCHEMA_NAME | TABLE_ID | TABLE_NAME    | TRIGGER_TYPE        | CLASSIFIED_ON             | TABLE_DELETED_ON | RESULT                         |
+-------------+---------------+-----------+-------------+----------+---------------+---------------------+---------------------------+----------------+--------------------------------+
| 10          | MY_DB         | 100       | MY_SCHEMA   | 1234     | EMPLOYEES_NEW | AUTO CLASSIFICATION | 2025-03-01 08:00:00 -0800 | NULL           | {"EMAIL": {...}, "SSN": {...}} |
| 10          | MY_DB         | 100       | MY_SCHEMA   | 1234     | EMPLOYEES     | MANUAL              | 2025-02-15 14:30:00 -0800 | NULL           | {"EMAIL": {...}}               |
+-------------+---------------+-----------+-------------+----------+---------------+---------------------+---------------------------+----------------+--------------------------------+

Zählen der Klassifizierungsereignisse in den letzten sieben Tagen

Das folgende Beispiel zeigt die Anzahl der Klassifizierungsereignisse in den letzten sieben Tagen:

SELECT
    COUNT(*) AS classification_count
  FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_HISTORY
  WHERE classified_on >= DATEADD(DAY, -7, CURRENT_TIMESTAMP());
+----------------------+
| CLASSIFICATION_COUNT |
+----------------------+
| 42                   |
+----------------------+

Vergleichen von Klassifizierungsausführungen für eine Tabelle

Das folgende Beispiel vergleicht die beiden letzten Klassifizierungsausführungen für eine Tabelle und gibt nur die Spalten zurück, deren Klassifizierung sich zwischen den Ausführungen geändert hat. Jede Zeile im Ergebnis enthält eine``change_type``-Spalte mit einem der folgenden Werte:

  • ADDED: Die Spalte wurde im vorherigen Lauf nicht klassifiziert. Die PREV_*-Spalten sind NULL.

  • REMOVED: Die Spalte wurde in der vorherigen Ausführung klassifiziert, aber nicht in der aktuellen Ausführung. Die CURR_*-Spalten sind NULL.

  • CHANGED: Die Spalte existiert in beiden Ausführungen, aber ihre semantische oder Datenschutzkategorie ist unterschiedlich.

Spalten, deren Klassifizierung in beiden Ausführungen identisch war, sind von den Ergebnissen ausgeschlossen.

WITH ranked AS (
    SELECT
        table_id,
        database_id,
        schema_id,
        database_name,
        schema_name,
        table_name,
        classified_on,
        trigger_type,
        result,
        ROW_NUMBER() OVER (PARTITION BY table_id ORDER BY classified_on DESC) AS rn
      FROM SNOWFLAKE.ACCOUNT_USAGE.DATA_CLASSIFICATION_HISTORY
      WHERE table_id = 1234
    ),
  curr_cols AS (
      SELECT r.table_id, r.database_id, r.schema_id,
          r.database_name, r.schema_name, r.table_name,
          r.classified_on, r.trigger_type,
          c.key AS column_name, c.value AS column_result
        FROM ranked r, LATERAL FLATTEN(input => r.result) c
        WHERE r.rn = 1
  ),
  prev_cols AS (
      SELECT r.table_id,
          r.classified_on, r.trigger_type,
          c.key AS column_name, c.value AS column_result
        FROM ranked r, LATERAL FLATTEN(input => r.result) c
        WHERE r.rn = 2
  )
  SELECT
      curr.database_id,
      curr.database_name,
      curr.schema_id,
      curr.schema_name,
      curr.table_id,
      curr.table_name,
      prev.classified_on AS previous_classified_on,
      curr.classified_on AS current_classified_on,
      COALESCE(curr.column_name, prev.column_name) AS column_name,
      CASE
        WHEN prev.column_name IS NULL THEN 'ADDED'
        WHEN curr.column_name IS NULL THEN 'REMOVED'
        ELSE 'CHANGED'
      END AS change_type,
      prev.column_result:recommendation.semantic_category::STRING AS prev_semantic_category,
      curr.column_result:recommendation.semantic_category::STRING AS curr_semantic_category,
      prev.column_result:recommendation.privacy_category::STRING AS prev_privacy_category,
      curr.column_result:recommendation.privacy_category::STRING AS curr_privacy_category
    FROM curr_cols curr
    FULL OUTER JOIN prev_cols prev
      ON curr.table_id = prev.table_id
      AND curr.column_name = prev.column_name
    WHERE prev.column_name IS NULL
      OR curr.column_name IS NULL
      OR curr.column_result:recommendation.semantic_category != prev.column_result:recommendation.semantic_category
      OR curr.column_result:recommendation.privacy_category != prev.column_result:recommendation.privacy_category
    ORDER BY column_name;

Die Ausgabe zeigt drei Spalten, deren Klassifizierung sich zwischen den beiden letzten Ausführungen geändert hat: DATE_OF_BIRTH und SSN wurden in der aktuellen Ausführung neu identifiziert (ADDED), während PHONE in der vorherigen Ausführung zwar klassifiziert wurde, aber in der aktuellen Ausführung nicht mehr erscheint (REMOVED). Spalten, deren Klassifizierung über beide Ausführungen hinweg gleich bleibt, wie z. B. EMAIL, sind von den Ergebnissen ausgeschlossen.

+-------+---------+-----------+-------------+----------+------------+---------------------+---------------------+---------------+-------------+---------------+---------------+--------------+------------------+
| DB_ID | DB_NAME | SCHEMA_ID | SCHEMA_NAME | TABLE_ID | TABLE_NAME | PREV_CLASSIFIED_ON  | CURR_CLASSIFIED_ON  | COLUMN_NAME   | CHANGE_TYPE | PREV_SEMANTIC | CURR_SEMANTIC | PREV_PRIVACY | CURR_PRIVACY     |
+-------+---------+-----------+-------------+----------+------------+---------------------+---------------------+---------------+-------------+---------------+---------------+--------------+------------------+
| 10    | MY_DB   | 100       | MY_SCHEMA   | 1234     | EMPLOYEES  | 2025-02-15 14:30:00 | 2025-03-01 08:00:00 | DATE_OF_BIRTH | ADDED       | NULL          | DATE_OF_BIRTH | NULL         | QUASI_IDENTIFIER |
| 10    | MY_DB   | 100       | MY_SCHEMA   | 1234     | EMPLOYEES  | 2025-02-15 14:30:00 | 2025-03-01 08:00:00 | PHONE         | REMOVED     | PHONE_NUMBER  | NULL          | IDENTIFIER   | NULL             |
| 10    | MY_DB   | 100       | MY_SCHEMA   | 1234     | EMPLOYEES  | 2025-02-15 14:30:00 | 2025-03-01 08:00:00 | SSN           | ADDED       | NULL          | US_SSN        | NULL         | IDENTIFIER       |
+-------+---------+-----------+-------------+----------+------------+---------------------+---------------------+---------------+-------------+---------------+---------------+--------------+------------------+

Anzeigen der Klassifizierungsergebnisse für JSON-Spalten

Snowflake kann Spalten des Typs ARRAY, VARIANT oder OBJECT klassifizieren, wenn die semistrukturierten Daten im JSON-Format vorliegen. Das Ergebnis dieser Klassifizierung hat die folgenden Eigenschaften:

  • Das Ergebnisobjekt enthält ein object_path_results-Feld. Dieses Feld listet Objekte auf, wobei jedes Objekt einem Feld in den semistrukturierten Daten entspricht, das in einer nativen semantischen Kategorie klassifiziert wurde.

  • Wenn sich in einem Feld der semistrukturierten Daten sensible Daten befinden, dann lautet die semantische Kategorie der Spalte MULTIPLE. Um die semantische Kategorie von Feldern in den semistrukturierten Daten abzurufen, verwenden Sie das object_path_results-Feld in den Ergebnissen.

Nehmen wir als Beispiel an, dass Snowflake die folgende Tabelle klassifiziert:

+-----------------------------------------------------------+---------------+-----------------------------------------------------+
| ARRAY_COL                                                 | FIRST_NAME    | OBJECT_COL                                          |
+-----------------------------------------------------------+---------------+-----------------------------------------------------+
| [ { "email": "alice@example.com" }, { "email": "b..." } ] | "Joe"         | { "email": "jane@domain.com", "phone": "206-..." }  |
+-----------------------------------------------------------+---------------+-----------------------------------------------------+

Das Klassifizierungsergebnis könnte wie folgt aussehen:

{
  "ARRAY_COL": {
    "object_path_results": {
      "ARRAY_COL:[$$].email": {
        "alternates": [],
        "recommendation": {
          "confidence": "HIGH",
          "coverage": 1,
          "details": [],
          "privacy_category": "IDENTIFIER",
          "semantic_category": "EMAIL"
        }
      }
    },
    "recommendation": {
      "confidence": "HIGH",
      "details": [],
      "privacy_category": "IDENTIFIER",
      "semantic_category": "MULTIPLE"
    },
    "valid_value_ratio": 1
  },
  "FIRST_NAME": {
    "alternates": [],
    "recommendation": {
      "confidence": "HIGH",
      "coverage": 1,
      "details": [],
      "privacy_category": "IDENTIFIER",
      "semantic_category": "NAME"
    },
    "valid_value_ratio": 1
  },
  "OBJECT_COL": {
    "object_path_results": {
      "OBJECT_COL:email": {
        "alternates": [],
        "recommendation": {
          "confidence": "HIGH",
          "coverage": 1,
          "details": [],
          "privacy_category": "IDENTIFIER",
          "semantic_category": "EMAIL"
        }
      },
      "OBJECT_COL:phone": {
        "alternates": [],
        "recommendation": {
          "confidence": "HIGH",
          "coverage": 1,
          "details": [
            {
              "coverage": 1,
              "semantic_category": "US_PHONE_NUMBER"
            },
            {
              "coverage": 1,
              "semantic_category": "JP_PHONE_NUMBER"
            }
          ],
          "privacy_category": "IDENTIFIER",
          "semantic_category": "PHONE_NUMBER"
        }
      }
    },
    "recommendation": {
      "confidence": "HIGH",
      "details": [],
      "privacy_category": "IDENTIFIER",
      "semantic_category": "MULTIPLE"
    },
    "valid_value_ratio": 1
  }
}

Verwenden von Tags, um sensible Daten zu verfolgen

Wenn Snowflake sensible Daten klassifiziert, schlägt es systemdefinierte und benutzerdefinierte Tags für die Spalten, die sensible Daten enthalten, vor oder wendet diese automatisch an. Wenn Spalten mit sensiblen Daten diese Tags zugewiesen werden, können Sie die sensiblen Daten überwachen, indem Sie Abfragen ausführen und Funktionen zur Verfolgung der Tags aufrufen.

Um beispielsweise alle Spalten aufzulisten, die klassifiziert und einer semantischen Kategorie zugewiesen wurden, können Sie die folgende Abfrage ausführen:

SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.TAG_REFERENCES
  WHERE TAG_NAME = 'SEMANTIC_CATEGORY'
  ORDER BY object_database, object_schema, object_name, column_name;

Wenn Sie feststellen möchten, welche semantische Kategorie der Spalte fname in der Tabelle hr_data zugeordnet wurde, können Sie die folgende Abfrage ausführen, um den Wert des Tags SEMANTIC_CATEGORY zu erhalten:

SELECT SYSTEM$GET_TAG(
    'SNOWFLAKE.CORE.SEMANTIC_CATEGORY',
    'hr_data.fname',
    'COLUMN'
    );

Informationen zu den verschiedenen Möglichkeiten, wie Sie Tags verfolgen können, finden Sie unter Objekt-Tags überwachen.