GRANT DATABASE ROLE

Weist eine Datenbankrolle einer Kontorolle oder einer anderen Datenbankrolle zu.

Durch diese Aktion wird zwischen der Datenbankrolle und der Rolle, der sie zugewiesen wird, eine Übergeordnet/Untergeordnet-Beziehung geschaffen (auch als Rollenhierarchie bezeichnet).

Beachten Sie, dass Datenbankrollen Benutzern nicht direkt zugewiesen werden können.

Weitere Details dazu finden Sie unter Übersicht zur Zugriffssteuerung.

Siehe auch:

REVOKE DATABASE ROLE

GRANT ROLE, REVOKE ROLE

GRANT <Berechtigungen>

Syntax

GRANT DATABASE ROLE <name> TO ROLE <parent_role_name>
Copy

Parameter

name

Gibt den Bezeichner (d. h. den Namen) der Datenbankrolle an. Dieser muss für die Datenbank, in der die Rolle erstellt wird, eindeutig sein.

Der Bezeichner muss mit einem alphabetischen Zeichen beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. "My object"). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten.

Wenn der Bezeichner nicht vollqualifiziert ist (im Format db_name.database_role_name), sucht der Befehl die Datenbankrolle in der aktuellen Datenbank der Sitzung.

ROLE parent_role_name

Weist die Rolle der angegebenen Kontorolle oder Datenbankrolle zu.

Eine Datenbankrolle kann entweder einer Kontorolle oder einer anderen Datenbankrolle in derselben Datenbank zugewiesen werden. Wenn die übergeordnete Rolle eine Datenbankrolle ist und der Bezeichner nicht vollqualifiziert ist (im Format db_name.database_role_name), sucht der Befehl die Datenbankrolle in der aktuellen Datenbank der Sitzung.

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:

Berechtigung oder Rolle

Objekt

Anmerkungen

ACCOUNTADMIN

SNOWFLAKE.BUDGET_CREATOR

Ein Benutzer mit der Rolle ACCOUNTADMIN kann diese Datenbankrolle an eine kundenspezifische Rolle vergeben.

OWNERSHIP

Rolle

Rolle, die einem Benutzer oder einer anderen Rolle erteilt wird.

Alternativ können Sie auch eine Rolle mit der globalen Berechtigung MANAGE GRANTS verwenden. Only the SECURITYADMIN role, or a higher role, has this privilege by default. The privilege can be granted to additional roles as needed.

Beachten Sie, dass für die Bearbeitung eines Objekts in einem Schema auch die Berechtigung USAGE für die übergeordnete Datenbank und das Schema erforderlich ist.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.

Nutzungshinweise

Die vom System definierten Rollen, einschließlich PUBLIC, müssen nicht an andere Rollen vergeben werden, da die Rollenhierarchie für diese Rollen von Snowflake definiert und gepflegt wird.

Beispiele

GRANT DATABASE ROLE analyst TO ROLE SYSADMIN;
Copy