暂无图片
PostgreSql 如何配置一个用户只能看到对应的数据库列表吗?
我来答
分享
D
Dataplus
2021-04-08
PostgreSql 如何配置一个用户只能看到对应的数据库列表吗?

PostgreSql 如何配置一个用户只能看到对应的数据库列表吗?

我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
你好我是李白

PostgreSQL的用户创建之后,默认对所有数据库具有connect权限以及对数据库属于public对象都可以操作。

你如果只想让某个用户具有不是属主的某个库的连接以及查看权限则可以:

revoke CONNECT ON DATABASE {db_name} from public;
grant all on DATABASE {db_name}to {username};
–当然也可以用grant revoke控制更细粒度的权限,根据自己需要,需要注意pg某些权限需要从public回收掉才可以,比如connect。

暂无图片 评论
暂无图片 有用 0
打赏 0
张晓栋

尝试了 revoke CONNECT ON DATABASE a1 from public; 这样 别的用户是没有办法连接 a1 这个数据库了,但是 其他用户连接到 pg server 之后在 db list 依然可以看到a1这个数据库的存在,如果想要做到 只有指定的账户 在 db list 看到这个数据库怎么操作呢,对应的需求在 mysql 和 sqlserver 中都可以解决,唯独 pg 不知该如何处理,望解答,可付费

暂无图片 评论
暂无图片 有用 0
打赏 0
你好我是李白

PostgreSQL database名是全局,貌似通过正常grant跟revoke不能控制看到的db list,我测试回收系统表select权限也能看到db list。

暂无图片 评论
暂无图片 有用 0
打赏 0
马腾飞

找到解决办法了吗?

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
postgresql: 想往json类型的字段里 ,加自增列的id ,怎么操作?
回答 1
这个思路很奇特。需求不太合理。
pg如何模糊查询wal相关的参数?
回答 3
\dconfig这篇文章的第2个案例有示例:数据库微观案例第43期
当发生锁等待时候,pg_stat_activity中的wait_event_type,wait_event 分别是什么值??
回答 3
mark
用Excel导入PLSQL里,日期变成乱序是为什么?
回答 1
已采纳
数据类型不对吧?定义好列的类型。
PostgreSQL 中IN的参数长度有限制吗?
回答 2
已采纳
IN后面的参数数量没有限制,但是如果IN后面的参数真的很多,那你还是梳理一下需求,看是否能以一种更合适的方式来处理该查询,否则即使没有限制,也可能会撞见一些性能问题
pg_rman源码安装时候,make时候提示pg_config命令未找到
回答 1
pgconfig可以在pg源码编译安装后的bin目录找到,一般在linux环境下,你再用户bashprofile配置的PATH搜索路径中增加该bin目录;这种错误一般都是编译PG的扩展包需要的,我上次
PG高可用
回答 2
PG没有这种方案
postgresql 有没有专门的函数获取表的create语句?
回答 2
已采纳
没有自带的,你可以自己打上这个函数https://github.com/MichaelDBA/pggettabledef/blob/main/pggettabledef.sql然后就能这样用了sele
大家在运维postgresql过程中,用过什么工具呢?
回答 2
已采纳
pgAdmin、Navicat、DBeaver
plsql下面的search text无法输入任何内容,是什么原因?
回答 1
是不是你当前连接的用户没有任何对象是一个空用户呢?
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~