gpt4 book ai didi

sql - postgres 表权限不允许用户创建/选择 View

转载 作者:行者123 更新时间:2023-11-29 11:43:11 25 4
gpt4 key购买 nike

我正在管理一个包含多个模式的数据库。我在设置权限时遇到一些困难,想请求帮助。

我有名为 schemaA 的架构和一个 group_role db_writer

我使用以下 sql:

GRANT USAGE ON SCHEMA schemaA TO db_writer;
GRANT UPDATE, INSERT, SELECT, DELETE ON ALL TABLES IN SCHEMA schemaA TO db_writer;

但是,db_writer 无法创建 View 。它们返回时带有权限被拒绝的错误。此外,当我创建 View 时,她无法选择它们……我必须再次为该 View 设置权​​限。

据我所知, View 在特权方面被视为表......如果一个人被授予对模式中所有表的某些权限,这也适用于 View 。

我错过了什么?任何建议表示赞赏。

最佳答案

问题是 USAGE 不允许用户在数据库中创建对象。

尝试

GRANT USAGE, CREATE ON SCHEMA schemaA TO db_writer 

编辑:

新对象将获得默认权限,对于将来创建的对象,用户拥有这些权限,您可以这样做:

ALTER DEFAULT PRIVILEGES IN SCHEMA schemaA GRANT UPDATE, INSERT, SELECT, DELETE ON TABLES TO db_writer;
ALTER DEFAULT PRIVILEGES IN SCHEMA schemaA GRANT SELECT ON TABLES TO db_reader;

Check this answer for more info

关于sql - postgres 表权限不允许用户创建/选择 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27403852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com