哥伦布

博客园 首页 新随笔 联系 订阅 管理

PostgreSQL其实没有只读用户的语法,那么PostgreSQL提供了用户/角色属性来达到只读用户的效果,步骤如下:

1. 创建一个用户名为,密码为<your_own_password>的用户

CREATE USER <readonlyuser> WITH ENCRYPTED PASSWORD '<your_own_password>';

2. 修改用户只读事务属性

ALTER USER <readonlyuser> SET default_transaction_read_only=on;

3. 设置USAGE权限给到

GRANT USAGE ON SCHEMA <schemename> to <readonlyuser>;

4. 在对应的数据库中,授予权限,如select。

GRANT SELECT ON ALL TABLES IN SCHEMA <schemename> TO <readonlyuser>;

注意:如果模式名称以数字为前缀,那么需要加入双引号。如:"360data"

亲测可用,原文:https://developer.aliyun.com/article/586875

posted on 2023-02-16 11:15  Caraxes  阅读(589)  评论(0)    收藏  举报