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.
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 GOVERNANCE_VIEWER-Rolle bietet Einblick in Data Governance-bezogene Informationen. |
SECURITY_VIEWER |
Die Rolle SECURITY_VIEWER bietet Einblick in sicherheitsrelevante Informationen. |
Datenbankrolle, die für den Zugriff auf ACCOUNT_USAGE-Ansichten erforderlich ist¶
Die OBJECT_VIEWER-, USAGE_VIEWER-, GOVERNANCE_VIEWER-und SECURITY_VIEWER-Rollen haben die SELECT-Berechtigung zur Abfrage von Account Usage-Ansichten in der freigegebenen SNOWFLAKE Datenbank. Stellen Sie anhand der folgenden Tabelle fest, welche Datenbankrolle Zugriff auf eine Ansicht hat.
Ansicht |
Datenbankrollen |
|---|---|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER oder GOVERNANCE_VIEWER |
|
USAGE_VIEWER oder GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
SECURITY_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
GOVERNANCE_VIEWER, SECURITY_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
OBJECT_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER, GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
SECURITY_VIEWER |
|
GOVERNANCE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
GOVERNANCE_VIEWER |
|
GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
OBJECT_VIEWER |
|
GOVERNANCE_VIEWER |
|
OBJECT_VIEWER oder GOVERNANCE_VIEWER |
|
USAGE_VIEWER |
|
SECURITY_VIEWER |
|
SECURITY_VIEWER |
|
OBJECT_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
|
USAGE_VIEWER |
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 Kundenspezifische Rolle zum Erstellen von Budgets erstellen.
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¶
The ML_USER SNOWFLAKE database role is granted to the PUBLIC role in all Snowflake accounts that contain a shared SNOWFLAKE database and allows customers to access and use ML functions. Users must also have the USAGE privilege on the ML schema to call these functions.
MONITORING-Schema¶
Die Datenbankrolle MONITORING_VIEWER hat die SELECT-Berechtigung für alle Ansichten im MONITORING-Schema.
Die -Datenbankrolle MONITORING_VIEWER wird der Rolle PUBLIC in allen Snowflake-Konten zugewiesen, die eine freigegebene SNOWFLAKE-Datenbank enthalten.
SNOWFLAKE.CLASSIFICATION_ADMIN Datenbankrolle¶
The SNOWFLAKE.CLASSIFICATION_ADMIN database role allows a data engineer or steward to create an instance of the CLASSIFICATION_PROFILE class. A classification profile is used to implement automatic sensitive data classification.
SNOWFLAKE.CORTEX_AGENT_USER database role¶
Sie können die SNOWFLAKE.CORTEX_AGENT_USER-Datenbankrolle verwenden, um Ihren Benutzenden Zugriff auf Snowflake Cortex Agents API ohne Zugriff auf andere Cortex-Features zu gewähren. Die Verwendung der Cortex Agents API erfordert entweder die SNOWFLAKE.CORTEX_USER-Datenbankrolle oder die SNOWFLAKE.CORTEX_AGENT_USER-Datenbankrolle.
Die Datenbankrolle SNOWFLAKE.CORTEX_USER ist standardmäßig der Rolle PUBLIC zugewiesen. Für eine fein abgestufte Zugriffssteuerung können Sie den Zugriff über die PUBLIC-Rolle entziehen und Zugriff auf die SNOWFLAKE.CORTEX_AGENT_USER-Datenbankrolle gewähren. Weitere Informationen dazu finden Sie unter Zugriff auf den Agenten einrichten.
SNOWFLAKE.CORTEX_EMBED_USER database role¶
Die SNOWFLAKE.CORTEX_EMBED_USER-Datenbankrolle wird verwendet, um der Kundschaft Zugriff auf die Snowflake Cortex-Einbettungsfunktionen AI_EMBED, SNOWFLAKE.CORTEX.EMBED_768 und SNOWFLAKE.CORTEX_EMBED_TEXT_1024 zu gewähren, ohne Zugriff auf andere Cortex-Features zu gewähren. Der Aufruf dieser Einbettungsfunktionen erfordert entweder die SNOWFLAKE.CORTEX_USER-Datenbankrolle oder die SNOWFLAKE.CORTEX_EMBED_USER-Datenbankrolle. Diese Rolle wird standardmäßig keiner Rolle zugewiesen.
By default, this role is not granted to any roles. If you want users to have access to the embedding functions, grant this database role to appropriate roles. For details, see Cortex LLM Functions required privileges
SNOWFLAKE.CORTEX_USER database role¶
This SNOWFLAKE.CORTEX_USER database role is used to grant customers access to Snowflake Cortex features. By default, this role is granted to the PUBLIC role. The PUBLIC role is automatically granted to all users and roles, so this allows all users in your account to use Snowflake Cortex LLM functions.
If you don’t want all users to have this privilege, you can revoke access from the PUBLIC role and grant access to specific roles. For details, see Cortex LLM Functions required privileges.
SNOWFLAKE.COPILOT_USER Datenbankrolle¶
The SNOWFLAKE.COPILOT_USER database role allows customers to access Snowflake Copilot features. Initially, this database role is granted to the PUBLIC role. The PUBLIC role is automatically granted to all users and roles, so this allows all users in your account to use Snowflake Copilot. If you want to limit access to Snowflake Copilot features, you can revoke access from the PUBLIC role and grant access to specific roles. For details, see Anforderungen an die Zugriffssteuerung.
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.
In the following example a role is created which can be used to view SNOWFLAKE database object metadata, and does the following:
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_VIEWMDdem Benutzersmithzu.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;