CREATE DATABASE ROLE

Erstellt eine neue Datenbankrolle oder ersetzt eine bestehende Datenbankrolle im System.

Nach dem Erstellen einer Datenbankrolle können Sie der Datenbankrolle Objektberechtigungen zuweisen und die Datenbankrolle dann anderen Datenbankrollen oder Kontorollen zuweisen, um die Sicherheit der Zugriffssteuerung für Objekte im System zu ermöglichen.

Siehe auch:

GRANT <Berechtigungen>, GRANT DATABASE ROLE , GRANT OWNERSHIP , DROP DATABASE ROLE , ALTER DATABASE ROLE , SHOW DATABASE ROLES, CREATE <Objekt> … CLONE

Syntax

CREATE [ OR REPLACE ] DATABASE ROLE [ IF NOT EXISTS ] <name>
  [ COMMENT = '<string_literal>' ]
Copy

Erforderliche 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), erstellt der Befehl die Datenbankrolle in der aktuellen Datenbank der Sitzung.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

Optionale Parameter

COMMENT = 'string_literal'

Gibt einen Kommentar für die Datenbankrolle an.

Standard: Kein Wert

Anforderungen an die Zugriffssteuerung

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

Berechtigung

Objekt

Anmerkungen

CREATE DATABASE ROLE

Datenbank

Eine Rolle mit der Berechtigung OWNERSHIP für die Datenbank kann einer anderen Kontorolle die Berechtigung CREATE DATABASE ROLE zuweisen.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einem bestimmten Satz 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

  • Wenn Sie eine Datenbankrolle erstellen, wird der Datenbankrolle automatisch die USAGE-Berechtigung für die Datenbank zugewiesen, die die Datenbankrolle enthält.

Vorsicht

Vermeiden Sie das Neuerstellen einer Datenbankrolle (unter Verwendung der Schlüsselwörter OR REPLACE). Beim Neuerstellen eines Objekts wird im Hintergrund (unter Verwendung von CREATE OR REPLACE <Objekt>) das Objekt zunächst gelöscht und dann erstellt. Wenn Sie eine Datenbankrolle neu erstellen, wird die Datenbankrolle aus allen Freigaben gelöscht, die ihr zugewiesen sind. Sie müssen diesen Freigaben die Datenbankrolle dann erneut zuweisen.

Wenn Sie eine Datenbankrolle neu erstellen müssen, informieren Sie darüber alle Datenverbraucher einer Freigabe, die die Datenbankrolle enthält. Die Datenverbraucher müssen die Datenbankrolle dann ihren eigenen Kontorollen erneut zuweisen.

Hinweis zu Metadaten:

Achtung

Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

Beispiele

Erstellen der Datenbankrolle dr1 in Datenbank d1:

CREATE DATABASE ROLE d1.dr1;
Copy