postgresql 9.1 - доступ к таблицам через функции

У меня 3 роли: суперпользователь, poweruser и пользователь. У меня есть таблица "данные" и функции data_select и data_insert.

Теперь я хотел бы определить, что только суперпользователь может получить доступ к таблице «данные». Poweruser и пользователь не могут получить доступ к таблице «данные» напрямую, а только через функции.

Пользователь может запускать только функцию data_select, poweruser может запускать как data_select, так и data_insert.

Итак, я могу создавать пользователей alice, bob, ... и наследовать им привилегии user или poweuser.

Это реально достижимо? Бьюсь с этим второй день и никуда не денусь.

Спасибо за уделенное время.

7
задан Petr Cezar 12 February 2012 в 11:26
поделиться