【发布时间】:2013-06-24 16:29:35
【问题描述】:
我第一次尝试创建 Postgres 数据库。所以这可能是一个愚蠢的问题。
我为必须从我的 PHP 脚本访问数据库的 DB 角色分配了基本只读权限,我有一个好奇心:如果我执行
GRANT some_or_all_privileges ON ALL TABLES IN SCHEMA schema TO role;
还有必要执行吗?
GRANT USAGE ON SCHEMA schema TO role;
USAGE:对于模式,允许访问包含在 指定的模式(假设对象自己的权限 也满足要求)。从本质上讲,这允许受让人 在架构中“查找”对象。
我认为,如果我可以选择或操作模式中包含的任何数据,我就可以访问模式本身的任何对象。我错了吗?如果不是,GRANT USAGE ON SCHEMA 是做什么用的?文档中的“假设对象自身的权限要求也得到满足”究竟意味着什么?
【问题讨论】:
标签: database postgresql schema grant database-permissions