Welche Berechtigungen sind erforderlich, um Zeilen aus information_schema.schemata zurückzugeben?

7

In postgres (ich bin auf 9.3.4), für welche Berechtigungen Zeilen zurückgegeben werden müssen

select * from information_schema.schemata

In der 9.3-Dokumentation heißt es "gehören einer derzeit aktivierten Rolle". Bedeutet das, dass der aufrufende Benutzer schematadie verschiedenen Schemata besitzen muss (oder Teil einer Rolle sein muss, die sie besitzt)?

Später in der 9.5-Dokumentation heißt es in Schemata, auf die "der aktuelle Benutzer Zugriff hat (indem er Eigentümer ist oder über ein Privileg verfügt)".

Das Konto, das derzeit versucht, die Abfrage auszuführen und 0 Zeilen zurückzugewinnen, wurde darauf grant usage on schemaangewendet.

Mit welchen Berechtigungen kann ein Datenbankkonto ein Schema in der Ansicht information_schema.schemata anzeigen?

Steph Locke
quelle
1
Verwandte: Wie zu überprüfen, ob PostgreSQL öffentlichen Schema auf Stackoverflow existiert
Daniel Vérité

Antworten:

1

Der Benutzer muss Eigentümer eines Schemas sein, um Zeilen abrufen zu können information_schema.schemata

alter schema $schemaName owner to $user;

Oder der Benutzer muss Mitglied einer Gruppe sein, der das Schema gehört

Nutzungszuschuss ist nicht ausreichend. Der Benutzer muss kein Superuser sein. Der Benutzer kann eine Tabelle in einem Schema besitzen, aber das reicht auch nicht aus.

Neil McGuigan
quelle