Вот некоторые общие инструкции для предоставления доступа пользователю PostgreSQL:
Права на подключение к базе данных:
GRANT CONNECT ON DATABASE database_name TO username;
Права на использование схемы:
GRANT USAGE ON SCHEMA schema_name TO username;
Права на все DML операции:SELECT, INSERT, UPDATE, DELETE:
GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA schema_name TO username;
Все права на таблицы:
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA schema_name TO username;
Все права на последовательности:
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA schema_name TO username;
Все права на базу данных:
GRANT ALL PRIVILEGES ON DATABASE database_name TO username;
Права на создание базы данных:
ALTER USER username CREATEDB;
Сделать пользователя суперпользователем:
ALTER USER myuser WITH SUPERUSER;
Удалить статус суперпользователя:
ALTER USER username WITH NOSUPERUSER;
Эти утверждения выше влияют только на текущие существующие таблицы. Чтобы применить к вновь созданным таблицам, вам нужно использовать alter default.
Например:
ALTER DEFAULT PRIVILEGES
FOR USER username
IN SCHEMA schema_name
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES TO username;
Полную информацию можно посмотреть в документации.