Групповая Роль, ограниченные Права доступа к БД

День добрый
столкнулся с такой проблемой
Необходимо добавить в БД пользователя
который мог бы просматривать только определенную БД
без возможности редактирования и удаления объектов.
т. е. только просматривать и делать выборку из таблиц.

как начал делать
залогинился под учеткой владельца БД и в psql

Создал групповую роль для просмотра
CREATE ROLE write_only

Создаю нового пользователя
CREATE ROLE ib123 LOGIN UNENCRYPTED PASSWORD '123';

Добавляем пользователя ib123 в новую группу
GRANT write_only TO ib123;

и далее этой группе выдал права на все таблицы для схемы
GRANT SELECT ON ALL TABLES IN SCHEMA ibank2 TO GROUP write_only;
GRANT EXECUTE ON ALL functions IN SCHEMA ibank2 TO GROUP write_only;

все выполнилось успешно. Логинюсь под новой учеткой ib123
и пробую сделать выборку из таблиц выдает "permission denied for schema ibank2"
Доступ запрещен к схеме ibank2

Скажите пожалуйста что сделано не так ?
и как можно реализовать вход с ограниченными правами (только просмотр и выборка) к определенной БД

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Во-первых, write - это

Во-первых, write - это "писать", а не "читать".
Во-вторых, обратитесь к мануалу и прочтите какие права доступа есть и выберите нужные:
http://postgresql.ru.net/manual/sql-grant.html
На мой взгляд вам не хватает прав на коннект к базе и USAGE.
Кстати возможно вам лучше пойти от противного. Т.е. сперва дать права ALL PRIVILEGES, а потом отозвать через REVOKE права на UPDATE, INSERT и DELETE.

сделал по другому.

День добрый
Ну да называл чуть коряво.
Вы были правы не хватало USAGE
сделал так без всяких групп

CREATE ROLE test_name WITH PASSWORD 'test_pass'  LOGIN;
 GRANT SELECT ON ALL TABLES IN SCHEMA ibank2 TO test_name ;
 GRANT USAGE ON SCHEMA ibank2 TO  test_name ;

все заработало как надо
Спасибо за помощь !

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023