为什么特权用户不能访问新创建的分区?
PostgreSQL版本:10.0
假设我的PostgreSQL服务器有一个名为app
的用户,具有以下权限:
GRANT SELECT, INSERT, UPDATE ON ALL TABLES IN SCHEMA public TO app;
GRANT USAGE ON ALL SEQUENCES IN SCHEMA public to app;
现在,此用户app
可以为“现有”表/分区(例如:mytable_partition_old
)选择,插入和更新操作,正如我期望的那样,到目前为止一切顺利。
但是,master
帐户在上面的GRANT
命令之后通过以下操作创建表的新分区:
CREATE TABLE IF NOT EXISTS "mytable_partition_new" PARTITION OF mytable FOR VALUES IN('some_value');
创建mytable_partition_new
后,用户app
通过执行INSERT INTO mytable_partition_new values (...)
命令获得“对此关系的权限被拒绝。”>
我知道可以再次通过问题GRANT SELECT, .... TO app
解决。我的问题是是否有更好的方法来实现?
((我们没有专门的DBA,并且在这种情况下停留了一段时间。)
为什么特权用户不能访问新创建的分区? PostgreSQL版本:10.0假设我的PostgreSQL服务器有一个名为app的用户,具有以下权限:GRANT SELECT,INSERT,UPDATE ON ...
您显示的GRANT仅授予existing