創建用戶及指定密碼:
CREATE USER readonly WITH ENCRYPTED PASSWORD 'ropass';
設置用戶默認事務只讀:
alter user readonly set default_transaction_read_only=on;
賦予用戶權限,查看public模式下所有表:
GRANT USAGE ON SCHEMA public to readonly; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO readonly;
賦予用戶連接數據庫權限:
GRANT CONNECT ON DATABASE foo to readonly;
切換到指定數據庫:
\c foo
賦予用戶表、序列查看權限:
GRANT USAGE ON SCHEMA public to readonly; GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO readonly; GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly;