Berikut cara memberikan akses ke user di PostgreSQL

  1. memberikan akses CONNECT ke database
GRANT CONNECT ON DATABASE database_name TO username;

2. memberikan akses USAGE di schema

GRANT USAGE ON SCHEMA schema_name TO username;

3. memberikan akses semua table untuk DML statements : SELECT, INSERT, UPDATE, DELETE

GRANT SELECT, INSERT, UPDATE, DELETE ON ALL TABLES IN SCHEMA schema_name TO username;

4. memeberikan akses all privileges di semua table di schema

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA schema_name TO username;

5. memberukan akses all privileges di semua sequence di schema

GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA schema_name TO username;

6. memberikan akses all privileges di database

GRANT ALL PRIVILEGES ON DATABASE database_name TO username;

7. memberkan permission untuk create database

ALTER USER username CREATEDB;

8. membuat user superuser

ALTER USER myuser WITH SUPERUSER;

9. remove superuser status

ALTER USER username WITH NOSUPERUSER;

semua perintah diatas dapat digunakan di tables yang sudah ada. Untuk create tables baru, kita membutuhkan alter default. contohnya adalah sebagai berikut

ALTER DEFAULT PRIVILEGES
FOR USER username
IN SCHEMA schema_name
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES TO username;