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 |
---|---|---|---|---|
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
✔ |
|||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
✔ |
|||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
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 |
---|
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 |
---|---|---|---|
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
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:
Erstellt eine kundenspezifische Rolle
Weist der kundenspezifischen Rolle die Rolle OBJECT_VIEWER zu
Weist die kundenspezifische Rolle einem Benutzer zu
Um die kundenspezifische Rolle zu erstellen und zuzuweisen, gehen Sie wie folgt vor:
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';
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;
Weisen Sie Rolle
CAN_VIEWMD
dem Benutzersmith
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;