Postgres (10.3) выдача разрешений - PullRequest
0 голосов
/ 03 мая 2018

У меня есть база данных PosgresQL (10.3). База данных создается user_owner, имеет полную структуру, но без данных строк.

Я хочу получить удаленный доступ к базе данных. С user_owner я могу получить удаленный доступ к базе данных без проблем.

Но я создал вторичного пользователя user_remote. Я хочу использовать этого пользователя вместо user_owner, потому что я дам ему временный удаленный доступ, а user_owner используется для внутреннего кода.

Для этого пользователя я даю права:

 GRANT ALL PRIVILEGES ON DATABASE name_db TO remote_user;
 GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO remote_user;

Когда я пытаюсь подключиться с удаленным user_remote, я могу подключиться к базе данных, но если я пытаюсь сделать что-то еще, например SELECT, я получаю ошибку:

[42501] ERROR: permission denied for relation table_name

Если я подключусь к базе данных и дам привилегии для таблицы, с помощью:

ПРЕДОСТАВИТЬ ВСЕ НА имя_таблицы ДЛЯ user_remote;

работает.

Но у меня есть много таблиц, и я хочу достичь:

1) предоставить доступ user_remote ко всем таблицам за один / несколько шагов, а не по таблице 2) Я не хочу, чтобы user_remote имел все привилегии, а просто выполнял операции со строками (удаление, обновление, вставка)

...