例如:
alter default privileges for user jack in schema public grant select on tables to scott;
注意执行这个语句后,在这个语句之前jack用户的老表,scott用户仍然是没有select权限的。这时需要手工把旧表的select权赋给scott用户,然后再使用alter default privileges就实现了只读用户scott。
收回上面的权限的语句为:
alter default privileges for user jack in schema public revoke select on tables from scott;
注意执行这个语句之前,alter default privileges .... grant语句之后,jack用户的建的表,scott用户已经有select权限的,这个语句不会收回这些select权限。
简单总结说alter default privileges并不会改变已有用户的权限,只有在有对象创建时,才会根据alter default privileges定义的情况给指定的用户加权限,这个语句有点象是在建对象时加了一个权限触发器。
查看alter default privileges权限的方法是使用/ddp:
part01=# /ddp
Owner | Schema | Type
-------+--------+-------+-------------------
jack
(1 row)
但是目前来看,无法通过如下设定,设置用户的查询权限 GRANT SELECT ON nvams.am_fixture TO fuser;
原文地址:https://www.jb51.cc/postgresql/196478.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。