Как в postgresql задать права на базу для пользователя?
Есть база.
Есть суперпользователь postgresql со всеми правами.
Как задать на базу права для нового пользователя.
создаем через CREATE USER newuser WITH PASSWORD 'password';
даем права GRANT ALL PRIVILEGES ON DATABASE base1 TO newuser;
и это не работает....
в базе у меня несколько схем: public, root, base
Есть ли команда дать все права только на одну базу в potgtgresql? (SELECT, UPDATE, DELETE, INSERT)
(без явного выбора схемы)
я старался въехать
GRANT ALL PRIVILEGES ON DATABASE base1 TO newuser;
поидее вот эта команда должна дать все, но нет...
Peer authentication failed for user "newuser"
Cheypnow, ну конечно да, и пароль 100% верный, потому что через копирование уже делал потом
пользователя создавал через CREATE USER и через CREATE ROLE
пробывал как WITH PASSWORD и WITH ENCRYPTED PASSWORD,
4 запроса, каждый раз удаляя как пользователя так и базу
может еще чтото надо в системе делать у меня UBUNTU 16.04
и через postgresql с другого компа подрубается что самое интересное
Сергей Горностаев, Понял проблему.
В общем если мы выдаем права на базу, а потом создаем в базе от пользователя postgres новые таблицы и т.д. то наш созданный пользователь не будет иметь к ним доступ.
поэтому после добавления от postgres нужно еще раз назначать права, либо
заводить данные от нового пользователя.