PG篇-只读用户

Postgresql中用户和角色没有区别,create user和create role的唯一区别在于前者默认带有login权限,下面介绍如何在PG中创建和删除只读用户。


创建只读用户:

1 1.创建用户readonly
2 create user readonly with password '123456';
3 2.用户只读事务
4 alter user readonly set default_transaction_read_only =on;
5 3.将所有库的语言的usage赋予
6 grant USAGE on SCHEMA public to readonly ;
7 4.授予select权限,第二步必须要执行否则新增表会报无访问权限
8 grant SELECT on ALL tables in schema public TO readonly ;
9 alter default privileges in schema public grant select on tables to readonly;

 

删除用户:
PG不能直接删除用户,需要先将权限收回否则会报错;
可以使用以下方法删除:

1 1.将权限转移到其他用户
2 reassign OWNED BY readonly to postgres;
3 2.删除用户拥有的对象
4 drop owned by readonly;
5 3.删除用户
6 drop user readonly;

注意:1,2指令只能删除对应库中的权限,其他库需要切换用户进行权限回收

posted @ 2020-10-14 14:34  DUAN的博客  阅读(276)  评论(0)    收藏  举报