2017-01-25 2 views
0

Ich versuche redshift Leseberechtigung für eine Gruppe von Menschen in unserer Organisation zu geben.Redshift indirekte Berechtigungen

Wir haben verschiedene Schemas, aber ich gewähre nur die Berechtigung NUTZEN und SELECT für das PUBLIC-Schema für Personen außerhalb unseres Teams.

Das Problem ist, ich habe Ansichten in PUBLIC-Schema, die auf Tabellen/Sichten in anderen Schemas zugreifen, und im Moment würden sie nicht ausgeführt, da Benutzer keine Berechtigung für diese anderen Schemas haben.

Ich frage mich, gibt es eine Möglichkeit, Menschen indirekten Zugriff auf verschiedene Schemas zu geben, ohne ihnen die Erlaubnis zu geben, diese anderen Schemas direkt abzufragen?

Dank

Antwort

0

Dies ist die Antwort zu sein scheint (na ja, scheint, wie seine für mich arbeiten):

GRANT USAGE ON SCHEMA public TO GROUP public_users_group; 

GRANT SELECT ON ALL TABLES IN SCHEMA public TO GROUP public_users_group; 

GRANT USAGE ON SCHEMA schema_for_indirect_access TO GROUP public_users_group; 

Es ist wie zu jeder Zeit eine neue Einheit scheint in einem der oben genannten Schemata erstellt wird, Das Skript der Berechtigungen muss erneut ausgeführt werden, also benutze ich jede Hälfte unseres Skripts in einem Cron-Job mit Python.