PG_GET_IAM_ROLE_BY_USER - Amazon Redshift

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