Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
PG_GET_IAM_ROLE_BY_USER
Gibt alle IAM-Rollen und Befehlsberechtigungen zurück, die einem Benutzer gewährt wurden.
Syntax
pg_get_iam_role_by_user('name')
Argumente
- Name
-
Der Name des Benutzers, für den IAM-Rollen zurückgegeben werden sollen.
Rückgabetyp
VARCHAR
Nutzungshinweise
Die Funktion PG_GET_IAM_ROLE_BY_USER gibt eine Zeile für jede Gruppe von Rollen und Befehlsberechtigungen zurück. Die Zeile enthält eine durch Kommas getrennte Liste mit dem Benutzernamen, der IAM-Rolle und dem Befehl.
Ein default
-Wert im Ergebnis zeigt an, dass der Benutzer eine beliebige verfügbare Rolle angeben kann, um den angezeigten Befehl auszuführen.
Sie müssen Superuser sein, um diese Funktion zu verwenden.
Beispiel
Das folgende Beispiel zeigt, dass der Benutzer reg_user1
jede verfügbare IAM-Rolle angeben kann, um COPY-Vorgänge durchzuführen. Der Benutzer kann außerdem die Redshift-S3-Write
-Rolle für die UNLOAD-Vorgänge angeben.
select pg_get_iam_role_by_user('reg_user1');
pg_get_iam_role_by_user --------------------------------------------------------------------------------- (reg_user1,default,COPY) (reg_user1,arn:aws:iam::123456789012:role/Redshift-S3-Write,COPY|UNLOAD)
Im folgenden Beispiel einer PG_GET_IAM_ROLE_BY_USER-Funktion wird das Ergebnis als Tabelle formatiert.
select username, iam_role, cmd FROM pg_get_iam_role_by_user('reg_user1') res_iam_role(username text, iam_role text, cmd text);
username | iam_role | cmd -----------+-------------------------------------------------+------ reg_user1 | default | None reg_user1 | arn:aws:iam::123456789012:role/Redshift-S3-Read | COPY