weixin_41083434 2023-02-13 14:48 采纳率: 28.6%
浏览 49
已结题

pgsql角色用户授权

和第三方对接:
我需要将某数据库下某个schema下指定的几个表拿給第三方系统看,
这个第三方系统只能查看该指定的几个表,不能进行进行增删改操作,

解决方法


1、创建只读用户:
CREATE USER ronly WITH ENCRYPTED PASSWORD 'r123456';

2、设置默认事务只读:
alter user ronly set default_transaction_read_only=on;

3、赋予用户连接数据库mypgsql的权限:
GRANT CONNECT ON DATABASE mypgsql to ronly;

4、现有的所有在模式(schema)下的表的使用权限赋给用户ronly
GRANT USAGE ON SCHEMA myschema1  to ronly;

5、赋予用户ronly所有public下的表的selectGRANT SELECT ON myschema1.table1,myschema1.table2 TO ronly;

至此,权限设置完成!

可以达到只读table1,table2的功能
但是我用该只读用户登录数据库之后,发现别的schema 也显示出来了,如myschema2显示出来了,以及上面的myschema1中的table3也显示出来了

请问我们的数据库角色授权可以指定用户登录只显示某个schema下的指定table1、table2,但是不显示table3这样的效果么?

  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-02-14 17:41
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月15日
  • 修改了问题 2月13日
  • 创建了问题 2月13日

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line