PostgreSQL 创建只读用户
2020-02-05 本文已影响0人
Hmcf
创建用户及指定密码:
CREATE USER username WITH ENCRYPTED PASSWORD 'ropass';
设置用户默认事务只读:
alter user username set default_transaction_read_only=on;
赋予用户权限,查看public模式下所有表:
GRANT USAGE ON SCHEMA public to username;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO username
赋予用户连接数据库权限:
GRANT CONNECT ON DATABASE foo to username;
切换到指定数据库:
\c foo
赋予用户表、序列查看权限:
将整个schema的权限赋予
GRANT USAGE ON SCHEMA public to username ;
将对应的序列赋予(ALL PRIVILEGES全部)
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO username ;
将所有的表赋予(也可以是单独的表或视图)
GRANT SELECT ON ALL TABLES IN SCHEMA public TO username ;
GRANT SELECT ON public.tablename(or view name) TO username ;