Data Governance-Fähigkeiten für Cortex Code

Cortex Code enthält integrierte Data Governance-Fähigkeiten, die Ihnen helfen, die Daten in Ihrem Snowflake-Konto zu verstehen, zu schützen und zu überwachen. Diese Fähigkeiten funktionieren direkt in Ihrer Snowflake-Umgebung: beschreiben Sie in einfacher Sprache, was Sie benötigen, und Cortex Code generiert die erforderlichen Abfragen, Klassifizierungen und Analysen für Sie und führt sie aus. Sie müssen nicht wissen, welche Fähigkeit Sie ausführen müssen. Cortex Code wählt automatisch die Fähigkeit aus, die zur Beantwortung Ihrer Frage benötigt wird.

Erste Schritte

  1. Installieren Sie die Cortex Code-CLI und verbinden Sie sich mit Ihrem Konto.

  2. Stellen Sie sicher, dass Sie die Anforderungen an die Zugriffssteuerung erfüllen.

  3. Stellen Sie Fragen über die Befehlszeile. Sie können jede der unten aufgeführten Beispiel-Eingabeaufforderungen direkt in Cortex Code verwenden. Cortex Code wählt automatisch die entsprechende Fähigkeit auf der Grundlage Ihrer Frage aus – es sind keine speziellen Befehle erforderlich.

Allgemeine Data Governance

Data Governance-Fähigkeiten können Fragen zur Zugriffssteuerung, zu Prüfpfaden, Berechtigungen, Rollenhierarchien und zur Überwachung der Einhaltung von Vorschriften in Ihrem gesamten Snowflake-Konto beantworten. Cortex Code nutzt Fähigkeiten zur Ausführung vonSQL-Abfragen mit den ACCOUNT_USAGE-Ansichten von Snowflake unter Verwendung eines eingebetteten semantischen Modells mit effektiven Abfragemustern.

Cortex Code kann Ihnen helfen, die folgenden Aufgaben zu erledigen:

  • Überwachen, wer wann auf welche Daten zugegriffen hat – Verstehen von Benutzerzugriffsmustern, Verfolgen des Abfrageverlaufs und Identifizieren von nach Stunden oder ungewöhnlichen Aktivitäten.

  • Berechtigungen und Rollenhierarchien analysieren – Überprüfen von Zuweisungen, Rollenzuweisungen und Berechtigungsstrukturen, um für Benutzer Zugriff mit den niedrigsten Berechtigungen sicherzustellen.

  • Konformitätsstatus überwachen – Analysieren von Maskierungsrichtlinien, Zeilenzugriffsrichtlinien, Aggregationsrichtlinien und Tag-Nutzung in Ihrem gesamten Konto.

  • Objektabhängigkeiten untersuchen – Verstehen, wie Datenbanken, Schemas, Tabellen und Ansichten miteinander in Beziehung stehen.

  • DDL-Änderungen verfolgen – Sehen, wer wann Objekte erstellt, geändert oder gelöscht hat.

Beispiel-Eingabeaufforderungen

"Who has accessed the SALES.NA.CUSTOMERS table in the last 30 days?"
"Show me all users with the ACCOUNTADMIN role"
"What tables were accessed outside of business hours last week?"
"List all grants to the ANALYST_ROLE"
"Which users have run DDL operations on the FINANCE database in the last 7 days?"
"Show me the role hierarchy for my account"
"What masking policies are applied across my account?"
"Which tables have no row access policies attached?"
"Show me all tag references in the ANALYTICS database"

Klassifizierung sensibler Daten

Die Data Governance-Fähigkeit für die Klassifizierung sensibler Daten kann persönlich identifizierbare Informationen (PII) und andere sensible Daten in Ihren Snowflake-Tabellen erkennen und klassifizieren. Sie verwendet die native SYSTEM$CLASSIFY-Funktion von Snowflake, um Tabellen zu durchsuchen und Spalten zu identifizieren, die Daten wie E-Mails, Telefonnummern, Sozialversicherungsnummern und Adressen enthalten. Sie kann auch automatisierte Klassifizierungsprofile für eine kontinuierliche Überwachung einrichten.

Cortex Code kann Ihnen helfen, die folgenden Aufgaben zu erledigen:

  • PII in Ihren Tabellen erkennen – Durchsuchen einzelner Tabellen oder ganzer Schemas, um Spalten zu finden, die sensible Daten wie E-Mails, Namen, Telefonnummern, Kreditkartennummern und Sozialversicherungsnummern enthalten.

  • Bestehende Klassifizierungsergebnisse analysieren – Abfrage der DATA_CLASSIFICATION_LATEST-Ansicht, um zu sehen, welche PII-Daten bereits erkannt wurde, welche Tabellen die vertraulichsten Spalten haben und welche Kategorien sensibler Daten existieren.

  • Automatische Klassifizierung einrichten – Erstellen von Klassifizierungsprofilen, die Datenbanken kontinuierlich auf neue sensible Daten überwachen und, falls gewünscht, Spalten automatisch taggen.

  • Benutzerdefinierte Klassifikatoren erstellen – Definieren von Regex-basierten Klassifikatoren für domänenspezifische sensible Daten (Mitarbeiter-IDs, interne Codes, benutzerdefinierte Formate), die von den integrierten Kategorien von Snowflake nicht abgedeckt werden.

  • Klassifizierungsgenauigkeit testen und validieren – Ausführen von Klassifikatoren für repräsentativen Tabellen, um die Erkennungsgenauigkeit zu überprüfen, bevor Sie sie in der Produktion einsetzen.

Beispiel-Eingabeaufforderungen

"Scan SALES.NA.ORDERS for PII"
"Does the CUSTOMERS table contain any sensitive data?"
"What PII exists across my ANALYTICS database?"
"Show me all columns classified as EMAIL or PHONE in my account"
"Which tables have the most sensitive columns?"
"Create a classification profile for the PROD_DB database"
"Set up auto-classification with auto-tagging enabled"
"Create a custom classifier for employee IDs that match the pattern EMP-XXXXX"
"Show me classification results for the NA.FINANCE schema"
"Which tables need re-classification (older than 90 days)?"

Datenschutzrichtlinien

Die Data Governance-Fähigkeit für Datenschutzrichtlinien unterstützt Sie bei der Erstellung, Prüfung und Verwaltung von Snowflake-Maskierungsrichtlinien, Zeilenzugriffsrichtlinien und Projektionsrichtlinien. Sie bietet bewährte Verfahren, bewährte Muster (wie Attribut-basierte Zugriffssteuerung) und gesteuerte Workflows sowohl für die Erstellung neuer Richtlinien als auch für die Überprüfung bestehender Richtlinien. Es enthält auch Referenzmaterial zur Einhaltung der Vorschriften für PCI-DSS, HIPAA, GDPR, CCPA, SOX und FERPA.

Cortex Code kann Ihnen helfen, die folgenden Aufgaben zu erledigen:

  • Maskierungsrichtlinien erstellen – Erstellen Sie Maskierungsrichtlinien auf Spaltenebene, die vertrauliche Daten basierend auf der Rolle des abfragenden Benutzers dynamisch ausblenden, unter Verwendung bewährter Verfahren wie IS_ROLE_IN_SESSION() und memoisierbare Funktionen.

  • Zeilenzugriffsrichtlinien erstellen – Einschränken, welche Zeilen ein Benutzer basierend auf Rollenmitgliedschaft, Attributen oder Lookup-Tabellen sehen kann.

  • Projektionsrichtlinien erstellen – Steuert, ob eine Spalte überhaupt in Abfrageergebnissen angezeigt werden kann.

  • Bestehende Richtlinien prüfen – Führen Sie die Listen aller Richtlinien in Ihrem Konto aus, bewerten Sie sie anhand einer Checkliste von Best Practices für die Sicherheit, und identifizieren Sie Anti-Pattern (z. B. mithilfe der Funktion CURRENT_ROLE anstelle vonIS_ROLE_IN_SESSION).

  • Konsolidierung verstreuter Richtlinien – Migration von tabellenspezifischen Richtlinien zu allgemeinen, wiederverwendbaren Richtlinien, die in einer Governance-Datenbank zentralisiert sind.

  • Erfüllen gesetzlicher Anforderungen – Abrufen von Richtlinienvorlagen und Hinweisen, die auf bestimmte Compliance-Frameworks zugeschnitten sind (HIPAA für Gesundheitswesen, PCI-DSS für Zahlungsdaten, GDPR für personenbezogene Daten in der EU).

Beispiel-Eingabeaufforderungen

"Create a masking policy for the EMAIL column in the SALES.NA.CUSTOMERS table"
"Help me set up row access policies for the FINANCE schema"
"Audit all masking policies in my account"
"Are there any anti-patterns in my existing data policies?"
"Create a HIPAA-compliant masking policy for PHI columns"
"Show me the best practice for role-based masking"
"I need a projection policy to prevent the SSN column from appearing in query results"
"Help me consolidate my scattered masking policies into reusable ones"
"What's the recommended pattern for Attribute-Based Access Control (ABAC)?"
"Generate a policy health report for my account"

Datenqualität

Die Data Governance-Fähigkeit für Datenqualität überwacht und analysiert die Datenqualität in Ihren Snowflake-Schemas mithilfe von Datenmetrikfunktionen (DMFs). Es bietet Health Scoring, Ursachenanalyse für fehlerhafte Metriken, Regressionserkennung, Trendanalysen, SLA-Alerts, Tabellenvergleiche zur Validierung der Migration und Analyse der Popularität von Datensets.

Cortex Code kann Ihnen helfen, die folgenden Aufgaben zu erledigen:

  • Schemazustand überprüfen – Ermittelt einen Gesamtwert auf der Datenqualität eines Schemas, der zeigt, wie viele Metriken bestanden oder nicht bestanden wurden und welche Tabellen überwacht wurden.

  • Qualitätsfehler untersuchen – Analysieren von Fehlermetriken, um zu verstehen, welche Tabellen und Spalten Probleme aufweisen, was die Probleme sind, und um Empfehlungen zur Korrektur zu erhalten.

  • Qualitätsregressionen erkennen – Vergleichen der aktuellen Qualität mit früheren Messungen, um festzustellen, ob sich die Qualität verbessert oder verschlechtert hat, und um neue Fehler zu identifizieren.

  • Qualitätstrends verfolgen – Anzeigen von Zeitreihen-Qualitätswerten, um zu verstehen, ob sich die Qualität im Laufe der Zeit verbessert, stabil ist oder abnimmt.

  • SLA-Alerts einrichten – Erstellen von automatisierten Snowflake ALERT-Objekten, die Sie benachrichtigen, wenn die Datenqualität unter einen Schwellenwert fällt.

  • Tabellen vergleichen – Überprüfen von Datenmigrationen, Abgleichen von Entwicklungs- und Produktionsdaten oder Finden von Unterschieden zwischen zwei Tabellenversionen auf Zeilenebene (hinzugefügte, entfernte, geänderte Zeilen, Schemaunterschiede).

  • Analyse der Popularität von Datensets – Identifizieren der am häufigsten und am wenigsten verwendeten Tabellen, nicht verwendete oder veraltete Daten finden und verstehen, wer welche Datensets nutzt.

Beispiel-Eingabeaufforderungen

"What is the data quality score for ANALYTICS.REPORTING?"
"Why is the SALES.CUSTOMERS.ORDERS table failing quality checks?"
"Has data quality improved or gotten worse in the DB.FINANCE schema this month?"
"Show me quality trends for PROD_DB.SALES over the last 30 days"
"Set up an alert if data quality in ANALYTICS.CORE drops below 90%"
"Compare STAGING.ORDERS_V1 with STAGING.ORDERS_V2"
"Find the differences between dev and prod versions of the SALES.ORDERS.CUSTOMERS table"
"Which tables in my account are the most popular?"
"Are there any unused tables in the SANDBOX database?"
"Show me the root cause of quality failures in SALES.ORDERS"

Herkunft (Lineage)

Die Data Governance-Fähigkeit für Lineage verfolgt Datenabhängigkeiten über Ihr Snowflake-Konto hinweg – sowohl vorgelagert (woher die Daten stammen) als auch nachgelagert (was von ihnen abhängig ist). Es unterstützt die Abstammung auf Tabellen- und Spaltenebene, die Auswirkungsanalyse mit Risikobewertung, die Ursachenanalyse mit Änderungserkennung und die Datenerkennung mit Vertrauensbewertung.

Cortex Code kann Ihnen helfen, die folgenden Aufgaben zu erledigen:

  • Auswirkungen von Änderungen bewerten – Bevor Sie eine Tabelle ändern, prüfen Sie alle nachgelagerten Objekte, die davon abhängen, geordnet nach Risiko (CRITICAL, MODERATE, LOW), mit Nutzungshäufigkeit und Anzahl der betroffenen Benutzer.

  • Datenprobleme durch vorgelagerte Ablaufverfolgung debuggen – Wenn ein Bericht falsche Zahlen anzeigt, können Sie die Daten über seine Transformationsschichten zurückverfolgen, um zu ermitteln, wo das Problem aufgetreten ist, einschließlich der jüngsten Schema- und Datenänderungen.

  • Vertrauenswürdige Datensets entdecken und verifizieren – Finden Sie die beste Tabelle für eine bestimmte Analyse, mit Werten auf der Grundlage von Schemaschichten (Produktion, Staging, Rohdaten, Sandbox), Nutzungsmustern und Datenaktualität.

  • Abhängigkeiten auf Spaltenebene verfolgen – Verstehen, welche nachgelagerten Spalten eine bestimmte Spalte nutzen, oder eine Spalte über Transformationsebenen zu ihrer ursprünglichen Quelle zurückverfolgen.

  • Neueste Änderungen in der Herkunft erkennen – Identifizieren von Schema-Änderungen, Datenänderungen und DDL-Operationen über den Herkunftspfad hinweg, um diese mit Datenqualitätsproblemen zu korrelieren.

Beispiel-Eingabeaufforderungen

"What will break if I change RAW_DB.SALES.ORDERS?"
"What depends on the SALES.SCH1.CUSTOMERS table?"
"Where does ANALYTICS_DB.REPORTING.REVENUE come from?"
"Why is the REVENUE_SUMMARY table showing wrong numbers?"
"Which table should I use for customer revenue analysis?"
"Is STAGING_DB.TRANSFORM.ORDERS_ENRICHED trustworthy?"
"What uses the AMOUNT column in SALES.ORDERS?"
"Where does the TOTAL_SALES column in the REVENUE report come from?"
"Show me the full lineage for SUMMIT.DEMO.SHIPMENTS"
"Has the DISCOUNT_PCT column in ORDERS changed recently?"

Anforderungen an die Zugriffssteuerung

Um die Data Governance-Fähigkeiten von Cortex Code erfolgreich aufzurufen, müssen Sie über Folgendes verfügen:

  • Berechtigungen und Rollen, die von Cortex Code benötigt werden.

  • Zugriff auf die Schemas, Tabellen und Ansichten, an denen Sie interessiert sind.

    • Für Fragen zur Klassifizierung sensibler Daten benötigen Sie die OWNERSHIP- oder USAGE-Berechtigung für die Tabelle oder Ansicht.

    • Für Datenschutzrichtlinien benötigen Sie die Berechtigung CREATE MASKING POLICY oder CREATE ROW ACCESS POLICY für das Schema, das die Tabelle enthält.

  • Zugriff auf Ansichten im ACCOUNT_USAGE-Schema. Standardmäßig hat nur die ACCOUNTADMIN-Systemrolle die Berechtigung, auf die Ansichten im ACCOUNT_USAGE-Schema zuzugreifen. Um anderen Personen den Zugriff auf diese Ansichten zu ermöglichen, können Sie eine der folgenden Möglichkeiten nutzen:

    • Gewähren Sie die IMPORTEDPRIVILEGES-Berechtigung für die SNOWFLAKE-Datenbank für die Rolle des Benutzers. Dies ist eine umfassende Gewährung von Berechtigungen, die es einem Benutzer ermöglicht, alle ACCOUNT_USAGE-Ansichten anzuzeigen, und außerdem Zugriff auf Ansichten im ORGANIZATION_USAGE-Schema gewährt.

    • Gewähren Sie Datenbankrollen, die für den Zugriff auf Ansichten erforderlich sind. Um Cortex Code für alle Governance-bezogenen Themen zu verwenden, benötigt ein Benutzer alle diese Datenbankrollen: OBJECT_VIEWER, USAGE_VIEWER, GOVERNANCE_VIEWER und SECURITY_VIEWER. Um einen Benutzer daran zu hindern, sich mit bestimmten Aspekten von Data Governance vertraut zu machen, weisen Sie eine Teilmenge dieser Rollen zu. Eine Liste der Ansichten, auf die jede Rolle zugreifen kann, finden Sie unter ACCOUNT_USAGE-Schema.

Tipps für beste Ergebnisse

  • Seien Sie spezifisch bei Objektnamen – Verwenden Sie vollqualifizierte Namen wie DATABASE.SCHEMA.TABLE für besonders genaue Ergebnisse.

  • Allgemein beginnen, dann aufschlüsseln – Beginnen Sie mit einem Zustandscheck oder einem Überblick und stellen Sie dann Folgefragen, um bestimmte Probleme zu untersuchen.