Benutzerverwaltung

Sicherheits- und Kontoadministratoren (d. h. Benutzer mit der Rolle SECURITYADMIN oder höher) können Snowflake-Benutzer mit SQL oder über die Weboberfläche erstellen und verwalten:

  • Mit SQL können Administratoren alle auf den Benutzer bezogenen Aufgaben ausführen, einschließlich der Änderung der Anmeldeinformationen und der Standardeinstellungen für Benutzer.

  • Die Weboberfläche unterstützt nicht alle benutzerbezogenen Aufgaben, sondern bietet einen praktischen Assistenten zum Erstellen von Benutzern und zum Ausführen der häufigsten Aktivitäten, z. B. zum Zurücksetzen des Kennworts eines Benutzers.

Unter diesem Thema:

Bemerkung

Nur Sicherheitsadministratoren (d. h. Benutzer mit der Rolle SECURITYADMIN oder höher) können andere Benutzer erstellen, ändern oder löschen.

Snowflake-Kennwortrichtlinie

Ein Kennwort kann eine beliebige Zeichenfolge von bis zu 256 Zeichen unter Beachtung der Groß-/Kleinschreibung und einschließlich Leerzeichen und Sonderzeichen (d. h. nicht alphanumerische Zeichen) wie Ausrufezeichen (!), Prozentzeichen (%) und Sternchen (*) sein.

Beim Erstellen eines Benutzers, dem Einstellen eines neuen/Initialkennworts für einen Benutzer oder beim Rücksetzen eines bestehenden Kennworts für einen Benutzer erzwingt Snowflake folgende Kennwortrichtlinie:

  • Muss mindestens 8 Zeichen lang sein.

  • Muss mindestens 1 Ziffer enthalten.

  • Muss mindestens 1 Großbuchstaben und 1 Kleinbuchstaben enthalten.

Diese Richtlinie deckt jedoch nur die minimalen Anforderungen an Benutzerkennwörter ab. Snowflake empfiehlt dringend die Einhaltung der folgenden Richtlinien, um möglichst starke Kennwörter zu erstellen:

  • Erstellen Sie ein Kennwort nur für Snowflake (d. h. verwenden Sie nie dieselben Kennwörter auch bei anderen Systemen oder Konten).

  • Verwenden Sie mehr als 8 Zeichen.

  • Verwenden Sie verschiedene, zufällig angeordnete Groß- und Kleinbuchstaben, Ziffern und Sonderzeichen einschließlich Leerzeichen.

  • Verwenden Sie niemals einfach zu erratende, gängige Kennwörter, Namen, Zahlen oder Datumsangaben.

Um das höchste Sicherheitsniveau für die Benutzeranmeldung zu konfigurieren, sollten sich Benutzer außerdem bei MFA anmelden.

Benutzerrollen

Snowflake verwendet Rollen, um zu steuern, auf welche Objekte (virtuelle Warehouses, Datenbanken, Tabellen usw.) die Benutzer zugreifen können:

  • Snowflake bietet eine Reihe vordefinierter Rollen sowie ein Framework zum Definieren einer Hierarchie von benutzerdefinierten Rollen.

  • Allen Snowflake-Benutzern wird automatisch die vordefinierte Rolle PUBLIC zugewiesen, die die Anmeldung bei Snowflake und den Zugriff auf grundlegende Objekte ermöglicht.

  • Zusätzlich zu der Rolle PUBLIC kann jedem Benutzer eine zusätzliche Rolle zugewiesen werden, wobei eine dieser Rollen als Standardrolle bezeichnet wird. Die Standardrolle eines Benutzers bestimmt die Rolle, die in den vom Benutzer initiierten Snowflake-Sitzungen verwendet wird. Dies ist jedoch nur eine Standardeinstellung. Benutzer können jederzeit innerhalb einer Sitzung die Rollen wechseln.

  • Rollen können bei der Benutzererstellung oder danach zugewiesen werden.

Achtung

Berücksichtigen Sie beim Festlegen der zusätzlichen Rollen, die einem Benutzer zugewiesen werden sollen, sowie beim Festlegen der Standardrolle, die folgende Aspekte für die vordefinierte Rolle ACCOUNTADMIN (erforderlich für Verwaltungsaufgaben auf Kontoebene):

  • Snowflake empfiehlt, die Zuweisung von ACCOUNTADMIN streng zu kontrollieren, sie aber trotzdem mindestens zwei Benutzern zuzuweisen.

  • ACCOUNTADMIN sollte niemals als Standardrolle eines Benutzers festgelegt werden. Legen Sie stattdessen eine untergeordnete administrative oder benutzerdefinierte Rolle als Standardrolle fest.

Weitere Details und bewährte Methoden zur ACCOUNTADMIN-Rolle finden Sie unter Hinweise zur Zugriffssteuerung. Allgemeine Informationen zu Rollen finden Sie unter Zugriffssteuerung in Snowflake.

Erstellen von Benutzern

Sie können einen Benutzer über die Weboberfläche oder mit SQL erstellen:

Bemerkung

Auf der Weboberfläche müssen Sie beim Erstellen eines Benutzers ein Kennwort angeben. Bei Verwendung des Befehls CREATE USER ist dies nicht erforderlich.

Außerdem erzwingt Snowflake nicht die Kennwortrichtlinie von Snowflake, wenn zuerst ein Kennwort festgelegt wird (z. B. beim Erstellen eines Benutzers oder beim Ändern eines Benutzers, für den kein Kennwort vorhanden ist). Dies gibt Sicherheitsadministratoren die Möglichkeit zu entscheiden, ob Benutzern eher weniger sichere, allgemeine Kennwörter oder strengere, spezifischere Kennwörter zugewiesen werden. Wenn allgemeine Anfangskennwörter verwendet werden, sollten Sie unbedingt die Eigenschaft MUST_CHANGE_PASSWORD auf TRUE setzen, damit die Benutzer bei der nächsten Anmeldung bei Snowflake (einschließlich Erstanmeldung) zur Änderungen des Kennworts gezwungen werden.

Verwenden der Weboberfläche

  1. Klicken Sie auf Account Account tab » Users.

  2. Klicken Sie auf die Schaltfläche Create.

  3. Geben Sie im Feld User Name einen eindeutigen Bezeichner für den Benutzer ein.

    Bemerkung

    Der Benutzername ist der eindeutige Bezeichner eines Benutzers in Snowflake. Dabei handelt es sich nicht um den Anmeldenamen des Benutzers (d. h. den Namen, den der Benutzer bei der Anmeldung bei Snowflake eingibt). In Snowflake können Benutzername und Anmeldename eines Benutzers unterschiedlich sein. Geben Sie auf dem nächsten Bildschirm einen Anmeldenamen für den Benutzer an.

  4. Geben Sie in den Feldern Password und Confirm Password das Anmeldekennwort für den Benutzer ein.

  5. Lassen Sie das Kontrollkästchen Force Password Change aktiviert, damit der Benutzer bei der nächsten Anmeldung zur Änderung seines Kennworts gezwungen wird. Andernfalls deaktivieren Sie das Kontrollkästchen.

  6. Klicken Sie auf die Schaltfläche Next. Der Bildschirm Advanced wird angezeigt.

  7. Geben Sie optional Login Name, Display Name und persönliche Daten für den Benutzer ein.

    Bemerkung

    Benutzer benötigen einen Anmeldenamen, um sich bei Snowflake anzumelden. Wenn Sie keinen Anmeldenamen explizit angeben, verwendet Snowflake den Benutzernamen als Anmeldenamen.

  8. Klicken Sie auf die Schaltfläche Next. Der Bildschirm Preferences wird angezeigt.

  9. Geben Sie optional Standardwerte für den Benutzer ein:

    • Virtuelles Warehouse

    • Namespace in der Form Datenbankname oder Datenbankname.Schemaname

    • Rolle

  10. Klicken Sie auf die Schaltfläche Finish. Snowflake zeigt eine Erfolgsmeldung an.

Verwenden von SQL

Verwenden Sie den Befehl CREATE USER, um einen Benutzer zu erstellen.

Wichtig

Wenn Sie beim Erstellen eines Benutzers dem Benutzer eine Standardrolle zuweisen, müssen Sie dem Benutzer diese Rolle danach explizit gewähren. Beispiel:

CREATE USER janesmith PASSWORD = 'abc123' DEFAULT_ROLE = myrole MUST_CHANGE_PASSWORD = TRUE;

GRANT ROLE myrole TO USER janesmith;

Mit dem Befehl GRANT ROLE können Sie einem Benutzer mehrere Rollen zuweisen. Die Weboberfläche unterstützt diese Funktion derzeit nicht.

Zurücksetzen des Kennworts eines Benutzers

Administratoren können das Kennwort eines Benutzers über die Weboberfläche oder mit SQL ändern.

Bemerkung

Benutzer können ihr eigenes Kennwort nur über die Weboberfläche ändern. Weitere Informationen finden Sie unter Ändern des Kennworts / Wechseln der (Sitzungs-)Rolle / Abmelden.

Verwenden der Weboberfläche

  1. Klicken Sie auf Account Account tab » Users.

  2. Klicken Sie auf eine Benutzerzeile, um diese auszuwählen, und klicken Sie dann auf die Schaltfläche Reset Password. Das Dialogfenster Reset Password wird geöffnet.

  3. Geben Sie das neue Anmeldekennwort des Benutzers ein, und bestätigen Sie das Kennwort.

  4. Lassen Sie das Kontrollkästchen Force Password Change aktiviert, damit der Benutzer bei der nächsten Anmeldung zur Änderung seines Kennworts gezwungen wird. Andernfalls deaktivieren Sie das Kontrollkästchen.

  5. Klicken Sie auf die Schaltfläche Finish.

Verwenden von SQL

Verwenden Sie den Befehl ALTER USER, um das Kennwort eines Benutzers einzugeben. Beispiel:

ALTER USER janesmith SET PASSWORD = 'H8MZRqa8gEe/kvHzvJ+Giq94DuCYoQXmfbb$Xnt' MUST_CHANGE_PASSWORD = TRUE;

Verwenden Sie alternativ die Syntax ALTER USER … RESETPASSWORD, um eine URL zu generieren und diese dem Benutzer bereitzustellen. Die URL öffnet eine Webseite, auf der der Benutzer das neue Kennwort eingeben kann. Beispiel:

ALTER USER janesmith RESET PASSWORD;

Bemerkung

  • Die generierte URL ist nur für eine einmalige Verwendung gültig und erlischt nach vier Stunden.

  • Durch Ausführen von ALTER USER … RESET PASSWORD wird das aktuelle Kennwort nicht ungültig. Der Benutzer kann das alte Kennwort so lange weiterverwenden, bis das neue Kennwort gesetzt ist.

Deaktivieren der Kennwortänderungsfunktion für Benutzer

Benutzer ändern ihr Snowflake-Kennwort über die Weboberfläche, indem Sie oben rechts (neben dem Anmeldenamen) auf das Dropdown-Menü » Change Password klicken. Das Dialogfenster Select a New Password wird geöffnet. Der Dialog akzeptiert das aktuelle und das neue Kennwort.

Sie können optional für Benutzer in Ihrem Konto die Möglichkeit deaktivieren, das eigene Kennwort zu ändern. Kontoadministratoren können Benutzerkennwörter weiterhin über die Weboberfläche mit Account Account tab » Users oder über SQL mit dem Befehl ALTER USER ändern.

Wenden Sie sich an den Snowflake-Support, um diese Änderung anzufordern.

Deaktivieren/Aktivieren von Benutzern

Durch das Deaktivieren eines Benutzers kann sich der Benutzer nicht bei Snowflake anmelden. Sie können einen Benutzer über die Weboberfläche oder mit SQL deaktivieren.

Verwenden der Weboberfläche

  1. Klicken Sie auf Account Account tab » Users.

  2. Klicken Sie auf eine Benutzerzeile, um diese auszuwählen, und klicken Sie dann auf die Schaltfläche Disable User. Ein Bestätigungsdialog wird geöffnet.

  3. Klicken Sie auf Yes, um den Benutzer zu deaktivieren.

Führen Sie zum Aktivieren eines Benutzers die gleichen Schritte aus, aber klicken Sie auf die Schaltfläche Enable User.

Verwenden von SQL

Verwenden Sie den Befehl ALTER USER, um einen Benutzer zu deaktivieren oder zu aktivieren. Beispiel:

  • Benutzer deaktivieren:

    ALTER USER janesmith SET DISABLED = TRUE;
    
  • Benutzer aktivieren:

    ALTER USER janesmith SET DISABLED = FALSE;
    

Entsperren eines Benutzers

Wenn eine Benutzeranmeldung nach fünf aufeinanderfolgenden Versuchen fehlschlägt, wird der Benutzer für einen bestimmten Zeitraum (derzeit 15 Minuten) von seinem Konto gesperrt. Nach Ablauf der Zeit löscht das System die Sperre automatisch und der Benutzer kann versuchen, sich erneut anzumelden.

Um den Benutzer vor Ablauf der Zeit zu entsperren, können Sie den Timer mit dem Befehl ALTER USER zurücksetzen.

Im folgenden Beispiel wird der Timer auf 0 zurückgesetzt, wodurch der Benutzer janesmith sofort entsperrt wird:

ALTER USER janesmith SET MINS_TO_UNLOCK= 0;

Tipp

Wenn eine einzelne Rolle die Berechtigung OWNERSHIP für alle Snowflake-Benutzer hat, empfehlen wir, die Rolle mehreren Benutzern zuzuweisen. Wenn ein Mitglied der Rolle gesperrt ist, kann auf diese Weise ein anderes Mitglied diesen Benutzer entsperren.

Ändern der Sitzungsparameter eines Benutzers

  • Verwenden Sie zum Anzeigen der Sitzungsparameter eines Benutzers die folgende SQL-Syntax:

    SHOW PARAMETERS [ LIKE '<pattern>' ] FOR USER <name>
    
  • Verwenden Sie die folgende Syntax, um die Sitzungsparameter für einen Benutzer zu ändern:

    ALTER USER <name> SET <session_param> = <value>
    

    Ermöglichen Sie beispielsweise einem Benutzer, auf unbestimmte Zeit ohne Unterbrechung mit Snowflake verbunden zu bleiben:

    ALTER USER `janesmith` SET CLIENT_SESSION_KEEP_ALIVE = TRUE;
    
  • Verwenden Sie die folgende Syntax, um einen Sitzungsparameter für einen Benutzer auf den Standardwert zurückzusetzen:

    ALTER USER <name> UNSET <session_param>
    

Ändern anderer Benutzereigenschaften

Sie können alle anderen Benutzereigenschaften mit dem Befehl ALTER USER ändern. Beispiel:

  • Ändern des Nachnamens von Benutzer janesmith in Jones:

    ALTER USER janesmith SET LAST_NAME = 'Jones';
    
  • Einstellen oder Ändern der Standardwerte für Warehouse, Namespace und Rolle für Benutzer janesmith:

    ALTER USER janesmith SET DEFAULT_WAREHOUSE = 'mywarehouse' DEFAULT_NAMESPACE = `mydatabase.myschema` DEFAULT_ROLE = `myrole`;
    

Anzeigen von Benutzern

Sie können Informationen zu Benutzern mit SQL anzeigen.

Verwenden Sie den Befehl DESCRIBE USER oder SHOW USERS, um Informationen zu einem oder mehreren Benutzern anzuzeigen.

Beispiel:

DESC USER janeksmith;

Löschen eines Benutzers

Durch das Löschen eines Benutzers werden die Benutzeranmeldeinformationen von Snowflake entfernt. Beachten Sie, dass alle vom Benutzer erstellten Objekte eigentlich der aktiven Rolle des Benutzers gehören, die er beim Erstellen der Objekte innehatte. Das Löschen eines Benutzers wirkt sich daher nicht auf die von ihm erstellten Objekte aus. Ein anderer Benutzer, dem die gleiche Rolle oder eine höhere Rolle in der Rollenhierarchie zugewiesen wurde, kann die Objekte verwalten oder die Eigentümerschaft an eine andere Rolle übertragen.

Verwenden der Weboberfläche

  1. Klicken Sie auf Account Account tab » Users.

  2. Klicken Sie auf eine Benutzerzeile, um diese auszuwählen, und klicken Sie dann auf die Schaltfläche Drop. Ein Bestätigungsdialog wird geöffnet.

  3. Klicken Sie auf Yes, um den Benutzer zu löschen.

Verwenden von SQL

Verwenden Sie den Befehl DROP USER, um einen Benutzer zu löschen.

DROP USER janesmith;