Direkt zum Inhalt

Wie erlaube ich einem Amazon Redshift-Benutzer, Systemtabellendaten von anderen Benutzern in einem Cluster anzuzeigen?

Lesedauer: 2 Minute
0

Ich möchte einem Amazon Redshift-Benutzer ermöglichen, Daten anzuzeigen, die andere Benutzer in Systemtabellen in einem Amazon Redshift-Cluster generieren.

Lösung

Standardmäßig haben nur Amazon Redshift-Datenbank-Superuser die Berechtigung, alle Datenbanken anzuzeigen. Um Daten anzuzeigen, die andere Benutzer in Systemtabellen generieren, füge dem Parameter SYSLOG ACCESS mit UNRESTRICTED (uneingeschränktem) Zugriff hinzu.

Hinweis: Benutzer mit SYSLOG ACCESS können Superuser-Tabellen nicht anzeigen. Nur Superuser können andere Superuser-Tabellen anzeigen.

Führe die folgenden Schritte aus:

  1. Stelle als Superuser eine Verbindung zur Amazon Redshift-Datenbank her.

  2. Führe den SQL-Befehl ALTER USER aus:

    test=# ALTER USER testuser WITH SYSLOG ACCESS UNRESTRICTED;
    ALTER USER

    Hinweis: Ersetze testuser durch den Benutzernamen, für den du Zugriff gewährst. Sieh dir auch die erforderlichen Berechtigungen für ALTER USER an.

  3. Trenne die Verbindung zur Amazon Redshift-Datenbank als Superuser.

  4. Stelle als Benutzer, der SYSLOG ACCESS mit UNRESTRICTED (uneingeschränktem) Zugriff hat, eine Verbindung zur Amazon Redshift-Datenbank her.

  5. Führe den folgenden Befehl aus, um den Zugriff zu testen:

    test=> select * from stv_inflight;

    Die folgende Beispielausgabe zeigt, dass der Benutzer, dem du UNRESTRICTED Zugriff gewährt hast, jetzt Zugriff auf die Tabellen der Benutzer hat.

    -[ RECORD 1 ]--------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    userid                     | 100
    slice                      | 12811
    query                      | 3036
    label                      | default                                  
    xid                        | 35079530
    pid                        | 1073746910
    starttime                  | 2022-09-15 07:09:15.894317
    text                       | select * from my_schema.dw_lu_tiers_test a, my_schema.dw_lu_tiers_test;                         
    
    suspended                  | 0
    insert_pristine            | 0
    concurrency_scaling_status | 0
    -[ RECORD 2 ]--------------+---------------------------------------------------------------------------------------------------------------------------------------------------
    userid                     | 181
    slice                      | 12811
    query                      | 3038
    label                      | default
    xid                        | 35079531
    pid                        | 1073877909
    starttime                  | 2022-09-15 07:09:17.694285
    text                       | select * from stv_inflight;                                       
    
    suspended                  | 0
    insert_pristine            | 0
    concurrency_scaling_status | 0
AWS OFFICIALAktualisiert vor einem Jahr