SNOWFLAKE-Datenbankrollen

Bei der Einrichtung eines Kontos wird die SNOWFLAKE-Datenbank automatisch importiert. Die Datenbank ist ein Beispiel, wie Snowflake Secure Data Sharing verwendet, um Objektmetadaten und andere Nutzungskennzahlen für Ihre Organisation und Ihre Konten zur Verfügung zu stellen.

Der Zugriff auf Schemaobjekte in der SNOWFLAKE-Datenbank wird durch verschiedene Datenbankrollen gesteuert. In den folgenden Abschnitten werden die SNOWFLAKE-Datenbankrollen, die zugehörigen Berechtigungen und die Schemaobjekte beschrieben, auf die die Rolle Zugriff hat.

Unter diesem Thema:

ACCOUNT_USAGE-Schema

ACCOUNT_USAGE-Schemas haben vier definierte SNOWFLAKE-Datenbankrollen, die jeweils die SELECT-Berechtigung für bestimmte Ansichten haben.

Rolle

Zweck und Beschreibung

OBJECT_VIEWER

Die Rolle OBJECT_VIEWER bietet Einblick in die Metadaten eines Objekts.

USAGE_VIEWER

Die Rolle USAGE_VIEWER bietet Einblick in historische Nutzungsinformationen.

GOVERNANCE_VIEWER

Die Rolle GOVERNANCE_VIEWER bietet Einblick in richtlinienbezogene Informationen.

SECURITY_VIEWER

Die Rolle SECURITY_VIEWER bietet Einblick in sicherheitsrelevante Informationen.

ACCOUNT_USAGE-Ansichten nach Datenbankrolle

Die Rollen OBJECT_VIEWER, USAGE_VIEWER, GOVERNANCE_VIEWER und SECURITY_VIEWER haben die SELECT-Berechtigung, um die Account Usage-Ansichten der freigegebenen SNOWFLAKE-Datenbank abzufragen.

Ein Häkchen (d. h. ✔) bedeutet, dass die Rolle über die SELECT-Berechtigung für die Ansicht verfügt.

Ansicht

OBJECT_VIEWER-Rolle

USAGE_VIEWER-Rolle

GOVERNANCE_VIEWER-Rolle

SECURITY_VIEWER-Rolle

COLUMNS-Ansicht

Ansicht COMPLETE_TASK_GRAPHS

DATABASES-Ansicht

Ansicht ELEMENT_TYPES

Ansicht FIELDS

FILE_FORMATS-Ansicht

FUNCTIONS-Ansicht

Ansicht OBJECT_DEPENDENCIES

PIPES-Ansicht

REFERENTIAL_CONSTRAINTS-Ansicht

SCHEMATA-Ansicht

SEQUENCES-Ansicht

STAGES-Ansicht

TABLE_CONSTRAINTS-Ansicht

TABLES-Ansicht

TAGS-Ansicht

VIEWS-Ansicht

Ansicht AUTOMATIC_CLUSTERING_HISTORY

Ansicht CLASS_INSTANCES

Ansicht CLASSES

COPY_HISTORY-Ansicht

Ansicht DATA_TRANSFER_HISTORY

DATABASE_STORAGE_USAGE_HISTORY-Ansicht

Ansicht EVENT_USAGE_HISTORY

Ansicht EXTERNAL_ACCESS_HISTORY

LOAD_HISTORY-Ansicht

MATERIALIZED_VIEW_REFRESH_HISTORY-Ansicht

Ansicht METERING_DAILY_HISTORY

Ansicht METERING_HISTORY

PIPE_USAGE_HISTORY-Ansicht

Ansicht REPLICATION_USAGE_HISTORY

Ansicht REPLICATION_GROUP_REFRESH_HISTORY

Ansicht REPLICATION_GROUP_USAGE_HISTORY

Ansicht SERVICES

Ansicht SNOWPARK_CONTAINER_SERVICES_HISTORY

SEARCH_OPTIMIZATION_HISTORY-Ansicht

Ansicht SERVERLESS_TASK_HISTORY

STAGE_STORAGE_USAGE_HISTORY-Ansicht

STORAGE_USAGE-Ansicht

Ansicht TABLE_STORAGE_METRICS

Ansicht TASK_HISTORY

Ansicht WAREHOUSE_EVENTS_HISTORY

WAREHOUSE_LOAD_HISTORY-Ansicht

WAREHOUSE_METERING_HISTORY-Ansicht

Ansicht MASKING_POLICIES

Ansicht QUERY_ACCELERATION_ELIGIBLE

QUERY_HISTORY-Ansicht

Ansicht AGGREGATE_QUERY_HISTORY

Ansicht POLICY_REFERENCES

ROW_ACCESS_POLICIES-Ansicht

Ansicht TAG_REFERENCES

ACCESS_HISTORY-Ansicht

Ansicht GRANTS_TO_ROLES

Ansicht GRANTS_TO_USERS

LOGIN_HISTORY-Ansicht

Ansicht PASSWORD_POLICIES

Ansicht ROLES

Ansicht SESSION_POLICIES

SESSIONS-Ansicht

Ansicht USERS

READER_ACCOUNT_USAGE-Schema

Die Datenbankrolle READER_USAGE_VIEWER SNOWFLAKE hat die SELECT-Berechtigung für alle READER_ACCOUNT_USAGE-Ansichten. Da Leserkonten von Clients erstellt werden, wird erwartet, dass die Rolle READER_USAGE_VIEWER denjenigen Rollen zugewiesen wird, die zur Überwachung der Nutzung von Leserkonten verwendet werden.

Ansicht

LOGIN_HISTORY-Ansicht

QUERY_HISTORY-Ansicht

RESOURCE_MONITORS-Ansicht

STORAGE_USAGE-Ansicht

WAREHOUSE_METERING_HISTORY-Ansicht

CORE-Schema

Die SNOWFLAKE-Datenbankrolle CORE_VIEWER wird der Rolle PUBLIC in allen Snowflake-Konten zugewiesen, die eine freigegebene SNOWFLAKE-Datenbank enthalten. Die USAGE-Berechtigung wird allen von Snowflake definierten Funktionen und Bundles im CORE-Schema erteilt.

Budgetklasse

Die BUDGET_CREATOR Snowflake-Datenbankrolle erhält die USAGE-Berechtigung für das Schema SNOWFLAKE.CORE und die BUDGET-Klasse im Schema. Diese Berechtigung erlaubt es Benutzern mit der Rolle BUDGET_CREATOR, Instanzen der Klasse BUDGET zu erstellen.

Weitere Informationen dazu finden Sie unter Erforderliche Rollen und Berechtigungen zum Erstellen von Budgets.

Tag-Objekte

Der Snowflake-Datenbankrolle GOVERNANCE_ADMIN wird die APPLY-Berechtigung für die System-Tags PRIVACY_CATEGORY und SEMANTIC_CATEGORY erteilt (z. B. apply on tag privacy_category to role governance_admin). Diese Berechtigung erlaubt es Benutzern mit der Rolle GOVERNANCE_ADMIN diese Tags auf Objekte anzuwenden, deren Eigentümer GOVERNANCE_ADMIN ist (d. h. über die OWNERSHIP-Berechtigung für das Objekt verfügt).

Weitere Informationen dazu finden Sie unter:

ALERT-Schema

Der Datenbankrolle ALERT_VIEWER SNOWFLAKE wurde die USAGE-Berechtigung für die in diesem Schema definierten Funktionen erteilt.

ML-Schema

Die ML_USER SNOWFLAKE-Datenbankrolle wird der Rolle PUBLIC in allen Snowflake-Konten zugewiesen, die eine freigegebene SNOWFLAKE-Datenbank enthalten, und ermöglicht Kunden den Zugriff auf und die Nutzung von ML-gestützten Funktionen.

Verwenden von SNOWFLAKE-Datenbankrollen

Administratoren können GRANT DATABASE ROLE verwenden, um eine SNOWFLAKE-Datenbankrolle einer anderen Rolle zuzuweisen, die dann einem Benutzer erteilt werden kann. Dies würde es dem Benutzer ermöglichen, auf eine bestimmte Teilmenge von Ansichten der SNOWFLAKE-Datenbank zuzugreifen.

Im folgenden Beispiel wird eine Rolle erstellt, mit der die Metadaten von SNOWFLAKE-Datenbankobjekten angezeigt werden können, und die Folgendes tut:

  1. Erstellt eine kundenspezifische Rolle

  2. Weist der kundenspezifischen Rolle die Rolle OBJECT_VIEWER zu

  3. Weist die kundenspezifische Rolle einem Benutzer zu

Um die kundenspezifische Rolle zu erstellen und zuzuweisen, gehen Sie wie folgt vor:

  1. Erstellen Sie mit CREATE ROLE die Rolle CAN_VIEWMD, die für den Zugriff auf Objektmetadaten verwendet werden soll.

    Rollen können nur vom Benutzer mit der Systemrolle USERADMIN oder höher oder von einer anderen Rolle mit der Berechtigung CREATE ROLE für das Konto erstellt werden.

    CREATE ROLE CAN_VIEWMD COMMENT = 'This role can view metadata per SNOWFLAKE database role definitions';
    
    Copy
  2. Weisen Sie der Rolle CAN_VIEWMD die Rolle OBJECT_VIEWER zu.

    Nur Benutzer mit der Rolle OWNERSHIP können SNOWFLAKE-Datenbankrollen zuweisen. Weitere Informationen dazu finden Sie unter GRANT DATABASE ROLE.

    GRANT DATABASE ROLE OBJECT_VIEWER TO ROLE CAN_VIEWMD;
    
    Copy
  3. Weisen Sie Rolle CAN_VIEWMD dem Benutzer smith zu.

    Nur Benutzer mit der Rolle SECURITYADMIN können Benutzern Rollen zuweisen. Weitere Optionen finden Sie unter GRANT ROLE.

    GRANT ROLE CAN_VIEWMD TO USER smith;
    
    Copy