PostgreSQL-为什么特权用户不能访问新创建的分区

问题描述 投票:0回答:1

为什么特权用户不能访问新创建的分区?

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 ...

sql postgresql postgresql-10
1个回答
0
投票

您显示的GRANT仅授予existing

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.