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

Ansicht DATABASES

Ansicht ELEMENT_TYPES

Ansicht FIELDS

FILE_FORMATS-Ansicht

FUNCTIONS-Ansicht

Ansicht HYBRID_TABLES

Ansicht INDEXES

Ansicht INDEX_COLUMNS

Ansicht OBJECT_DEPENDENCIES

PIPES-Ansicht

REFERENTIAL_CONSTRAINTS-Ansicht

SCHEMATA-Ansicht

SEQUENCES-Ansicht

Ansicht STAGES

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

Ansicht HYBRID_TABLE_USAGE_HISTORY

LOAD_HISTORY-Ansicht

MATERIALIZED_VIEW_REFRESH_HISTORY-Ansicht

Ansicht METERING_DAILY_HISTORY

Ansicht METERING_HISTORY

Ansicht PIPE_USAGE_HISTORY

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

Ansicht STAGE_STORAGE_USAGE_HISTORY

STORAGE_USAGE-Ansicht

Ansicht TABLE_STORAGE_METRICS

Ansicht TASK_HISTORY

Ansicht WAREHOUSE_EVENTS_HISTORY

WAREHOUSE_LOAD_HISTORY-Ansicht

WAREHOUSE_METERING_HISTORY-Ansicht

ACCESS_HISTORY-Ansicht

Ansicht AGGREGATE_ACCESS_HISTORY

Ansicht AGGREGATE_QUERY_HISTORY

Ansicht AGGREGATION_POLICIES

Ansicht DATA_CLASSIFICATION_LATEST

Ansicht MASKING_POLICIES

Ansicht QUERY_ACCELERATION_ELIGIBLE

QUERY_HISTORY-Ansicht

Ansicht POLICY_REFERENCES

Ansicht PROJECTION_POLICIES

ROW_ACCESS_POLICIES-Ansicht

Ansicht TAG_REFERENCES

Ansicht GRANTS_TO_ROLES

Ansicht GRANTS_TO_USERS

LOGIN_HISTORY-Ansicht

Ansicht NETWORK_POLICIES

Ansicht NETWORK_RULES

Ansicht NETWORK_RULE_REFERENCES

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

ORGANIZATION_USAGE-Schema

Den SNOWFLAKE-Datenbankrollen ORGANIZATION_USAGE_VIEWER, ORGANIZATION_BILLING_VIEWER und ORGANIZATION_ACCOUNTS_VIEWER wird die SELECT-Berechtigung für die Organization Usage-Ansichten der freigegebenen SNOWFLAKE-Datenbank erteilt.

Ansicht

ORGANIZATION_BILLING_VIEWER-Rolle

ORGANIZATION_USAGE_VIEWER-Rolle

ORGANIZATION_ACCOUNTS_VIEWER-Rolle

Ansicht ACCOUNTS

Ansicht CONTRACT_ITEMS

Ansicht LISTING_AUTO_FULFILLMENT_USAGE_HISTORY

Ansicht RATE_SHEET_DAILY

Ansicht REMAINING_BALANCE_DAILY

Ansicht USAGE_IN_CURRENCY_DAILY

Ansicht MARKETPLACE_DISBURSEMENT_REPORT

Ansicht DATA_TRANSFER_DAILY_HISTORY

Ansicht DATA_TRANSFER_HISTORY

Ansicht DATABASE_STORAGE_USAGE_HISTORY

Ansicht AUTOMATIC_CLUSTERING_HISTORY

Ansicht MARKETPLACE_PAID_USAGE_DAILY

MATERIALIZED_VIEW_REFRESH_HISTORY-Ansicht

Ansicht METERING_DAILY_HISTORY

Ansicht MONETIZED_USAGE_DAILY

Ansicht PIPE_USAGE_HISTORY

QUERY_ACCELERATION_HISTORY-Ansicht

Ansicht REPLICATION_GROUP_USAGE_HISTORY

Ansicht REPLICATION_USAGE_HISTORY

Ansicht SEARCH_OPTIMIZATION_HISTORY

Ansicht STAGE_STORAGE_USAGE_HISTORY

Ansicht STORAGE_DAILY_HISTORY

Ansicht WAREHOUSE_METERING_HISTORY

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

Die Datenbankrolle CORE_VIEWER erhält die APPLY-Berechtigung für jedes Datenklassifizierungs-System-Tag: SNOWFLAKE.CORE.PRIVACY_CATEGORY und SNOWFLAKE.CORE.SEMANTIC_CATEGORY. Mit diesen Berechtigungen können Benutzer mit einer Rolle, die die Datenbankrolle CORE_VIEWER hat, diese System-Tags zu Spalten zuzuweisen.

Weitere Details 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.

CORTEX-Schema

Die Datenbankrolle CORTEX_USER SNOWFLAKE ermöglicht Kunden den Zugriff auf Cortex LLM-Funktionen. Anfangs ist diese Datenbankrolle nur der Rolle ACCOUNTADMIN zugewiesen. ACCOUNTADMIN muss diese Rolle an die Kontorollen weitergeben, damit die Benutzer Cortex LLM-Funktionen verwenden können.

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