Berikut cara memberikan akses ke user di PostgreSQL
- 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;