How to manage user privileges in PostgreSQL cluster with multiple databases/users?

Posted May 17, 2020 3k views
PostgreSQLDigitalOcean Managed PostgreSQL Database

I want to use a single Managed PostgreSQL cluster from DO to host multiple applications (since they’re all small, there’s no need to have a unique cluster per app).

From what I’ve gathered, permissions and user privileges on Postgres are quite complicated.

For instance, supposed I have a user named production_user and a database called mydatabase_prod. I want only this user to have permission to access and modify this database.

Is this the minimum that should be done or am I missing something obvious?

ALTER DATABASE mydabase_prod OWNER TO production_user;
GRANT CONNECT ON DATABASE mydabase_prod TO production_user;
GRANT ALL ON DATABASE mydabase_prod TO production_user;

Thanks in advance!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer

Hey @slig -

This syntax should work perfectly!