0
点赞
收藏
分享

微信扫一扫

Postgresql创建只读用户权限

技术只适用于干活 2022-04-22 阅读 96
数据库

在pg数据库中创建只读用户可以采用如下方法。大体实现就是将特定schema的相关权限赋予只读用户。

--创建用户
CREATE USER readonly WITH ENCRYPTED PASSWORD '123456';

--设置用户默认开启只读事务
ALTER USER readonly SET default_transaction_read_only = ON;

--设置用户登录权限

ALTER USER readonly WITH login;

--将schema中usage权限赋予给readonly用户,访问所有已存在的表
GRANT usage ON SCHEMA xyh TO readonly;

--将schema中表的查询权限赋予给readonly用户,访问所有已存在的表
GRANT SELECT ON ALL tables IN SCHEMA xyh TO readonly;

--未来访问xyh模式下所有新建的表:
ALTER DEFAULT privileges IN SCHEMA xyh GRANT SELECT ON tables TO readonly;

 

--查数据库

select * from pg_database;

--查模式

select exists(select 1 from pg_namespace where nspname='xyh');

举报

相关推荐

0 条评论