notes/postgres/user.sql

40 lines
1.2 KiB
SQL

DROP USER IF EXISTS report;
SET password_encryption = 'scram-sha-256';
CREATE ROLE report WITH
LOGIN
NOSUPERUSER
NOCREATEDB
NOCREATEROLE
INHERIT
NOREPLICATION
CONNECTION LIMIT -1
PASSWORD 'report';
--------------------grant--------------------------------------------------
GRANT USAGE ON SCHEMA lgdat TO report;
GRANT SELECT /*, UPDATE, INSERT, DELETE*/ ON ALL TABLES IN SCHEMA lgdat TO report;
GRANT USAGE ON ALL SEQUENCES IN SCHEMA lgdat TO report;
ALTER DEFAULT PRIVILEGES IN SCHEMA lgdat GRANT SELECT/*, UPDATE, INSERT, DELETE*/ ON TABLES TO report;
ALTER DEFAULT PRIVILEGES IN SCHEMA lgdat GRANT USAGE ON SEQUENCES TO report;
---------------------------revoke---------------------------------------
REVOKE USAGE ON SCHEMA lgdat FROM report;
REVOKE USAGE ON SCHEMA lgdat FROM report;
REVOKE SELECT , UPDATE, INSERT, DELETE ON ALL TABLES IN SCHEMA lgdat FROM report;
REVOKE USAGE ON ALL SEQUENCES IN SCHEMA lgdat FROM report;
ALTER DEFAULT PRIVILEGES IN SCHEMA lgdat REVOKE SELECT, UPDATE, INSERT, DELETE ON TABLES FROM report;
ALTER DEFAULT PRIVILEGES IN SCHEMA lgdat REVOKE USAGE ON SEQUENCES FROM report;