ALTER USER … ADD PROGRAMMATIC ACCESS TOKEN (PAT)¶
Erzeugt ein programmatisches Zugriffstoken für einen Benutzer.
- Siehe auch:
ALTER USER … MODIFY PROGRAMMATIC ACCESS TOKEN (PAT), ALTER USER … ROTATE PROGRAMMATIC ACCESS TOKEN (PAT), ALTER USER … REMOVE PROGRAMMATIC ACCESS TOKEN (PAT), SHOW USER PROGRAMMATIC ACCESS TOKENS
Syntax¶
ALTER USER [ IF EXISTS ] [ <username> ] ADD { PROGRAMMATIC ACCESS TOKEN | PAT } <token_name>
[ ROLE_RESTRICTION = '<string_literal>' ]
[ DAYS_TO_EXPIRY = <integer> ]
[ MINS_TO_BYPASS_NETWORK_POLICY_REQUIREMENT = <integer> ]
[ COMMENT = '<string_literal>' ]
Erforderliche Parameter¶
ADD { PROGRAMMATIC ACCESS TOKEN | PAT } token_name
Erzeugt ein programmatisches Zugriffstoken mit dem angegebenen Namen.
Sie können das Schlüsselwort PAT als eine kürzere Form der Angabe der Schlüsselwörter PROGRAMMATIC ACCESS TOKEN verwenden.
Optionale Parameter¶
username
Der Name des Benutzers, dem das Token zugeordnet ist. Ein Benutzer kann nicht das programmatische Zugriffstoken eines anderen Benutzers zur Authentifizierung verwenden.
Um programmatische Zugriffstoken im Namen eines Benutzers zu erstellen, müssen Administratoren den Namen dieses Benutzers in dem Befehl ALTER USER angeben.
Wenn
username
weggelassen wird, erzeugt der Befehl ein programmatisches Zugriffstoken für den Benutzer, der gerade angemeldet ist (der aktive Benutzer dieser Sitzung).ROLE_RESTRICTION = 'string_literal'
Der Name der Rolle, die für die Berechtigungsprüfung und die Objekterstellung verwendet wird. Dies muss eine der Rollen sein, die dem Benutzer bereits zugewiesen wurde.
Bemerkung
Dieser Parameter ist erforderlich, wenn der Benutzer ein Dienstbenutzer ist (wenn für das Objekt USER TYPE=SERVICE gilt).
Wenn Sie dieses Token für die Authentifizierung verwenden, gehören alle Objekte, die Sie erstellen, dieser Rolle, und diese Rolle wird für die Berechtigungsprüfung verwendet.
Bemerkung
Sekundärrollen werden nicht verwendet, auch wenn DEFAULT_SECONDARY_ROLES für den Benutzer auf (‚ALL‘) eingestellt ist.
Wenn dem Benutzer, der mit dem programmatischen Zugriffstoken verbunden ist, diese Rolle entzogen wird, schlagen alle Versuche, das Token zur Authentifizierung zu verwenden, fehl.
Bemerkung
Durch die Angabe einer Rolle als ROLE_RESTRICTION-Wert wird die angegebene Rolle nicht für das programmatische Zugriffstoken gewährt. Dem Benutzer muss diese Rolle bereits zugewiesen worden sein.
Wenn Sie ROLE_RESTRICTION weglassen, werden alle Objekte, die Sie erstellen und die Ihrer primären Rolle gehören, und die Berechtigungen anhand Ihrer primären und Sekundärrolle bewertet (wie unter Autorisierung durch Primärrolle und Sekundärrollen erläutert).
DAYS_TO_EXPIRY = integer
Die Anzahl der Tage, während denen das programmatische Zugriffstoken für die Authentifizierung verwendet werden kann.
Sie können einen Wert zwischen
1
und der maximalen Ablaufzeit angeben.Standard:
15
MINS_TO_BYPASS_NETWORK_POLICY_REQUIREMENT = integer
Die Anzahl der Minuten, in denen ein Benutzer mit diesem Token auf Snowflake zugreifen kann, ohne einer aktiven Netzwerkrichtlinie zu unterliegen.
Sie können dies für ein Token für eine Person festlegen (wenn für das Objekt USER TYPE=PERSON gilt), wenn diese Person keiner Netzwerkrichtlinie unterliegt, aber ein programmatisches Zugriffstoken für die Authentifizierung verwenden muss. Siehe Anforderungen der Netzwerkrichtlinie.
Bemerkung
Die Einstellung MINS_TO_BYPASS_NETWORK_POLICY_REQUIREMENT erlaubt es Benutzern nicht, die Netzwerkrichtlinie selbst zu umgehen.
Sie können dies auf einen Wert im Bereich von
1
bis1440
(1 Tag) einstellen.Standard:
0
COMMENT = 'string_literal'
Beschreibender Kommentar zu dem programmatischen Zugriffstoken. Dieser Kommentar wird in der Liste der programmatischen Zugriffstoken in Snowsight angezeigt.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
---|---|---|
MODIFY PROGRAMMATIC AUTHENTICATION METHODS |
Benutzer |
Nur erforderlich, wenn Sie ein programmatisches Zugriffstoken für einen anderen Benutzer als sich selbst erstellen. |
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.
Ausgabe¶
Die Befehlsausgabe enthält in den folgenden Spalten Informationen über das neu generierte programmatische Zugriffstoken:
Spalte |
Beschreibung |
---|---|
|
Name des generierten Tokens. |
|
Das Token selbst. Verwenden Sie dies, um sich bei einem Endpunkt zu authentifizieren. Bemerkung Das Token erscheint nur in der Ausgabe des Befehls ALTER USER … ADD PROGRAMMATIC ACCESS TOKEN. Kein anderer SQL-Befehl oder keine andere Funktion gibt das Token aus oder zurück. Wenn Sie programmatisch auf dieses Token zugreifen müssen, können Sie Snowflake Scripting verwenden, um diesen Befehl auszuführen und das Token aus dem RESULTSET abzurufen. |
Nutzungshinweise¶
Jeder Benutzer kann maximal 15 programmatische Zugriffstoken besitzen.
Diese Zahl beinhaltet Token, die deaktiviert wurden.
In dieser Zahl sind die abgelaufenen Token nicht enthalten.
Beispiele¶
Erstellen Sie ein programmatisches Zugriffstoken mit dem Namen example_token
, das mit dem Benutzer example_user
verknüpft ist und alle Berechtigungen von dem zugehörigen Benutzer erbt:
ALTER USER IF EXISTS example_user ADD PROGRAMMATIC ACCESS TOKEN example_token
COMMENT = 'a reference example';
Erstellen Sie ein programmatisches Zugriffstoken namens example_token
, das mit dem Benutzer example_user
verknüpft ist, alle Berechtigungen von der Rolle example_role
erbt und nach 15 Tagen abläuft:
ALTER USER IF EXISTS example_user ADD PROGRAMMATIC ACCESS TOKEN example_token
ROLE_RESTRICTION = 'example_role'
DAYS_TO_EXPIRY = 15;