【发布时间】:2021-02-10 13:12:43
【问题描述】:
我有一个 Postgres 9.6.11。创建新架构时,我想授予角色名称“select_role”的权限,并授予“使用”权限。 我的第一件事是使用默认权限,但架构没有默认权限。 第二件事是使用触发器,但我不能将它用于系统目录。
谁能知道如何做到这一点?我对 Postgres 没有太多经验。 如果有人能帮我写这篇文章,我将不胜感激。
【问题讨论】:
标签: postgresql schema privileges
我有一个 Postgres 9.6.11。创建新架构时,我想授予角色名称“select_role”的权限,并授予“使用”权限。 我的第一件事是使用默认权限,但架构没有默认权限。 第二件事是使用触发器,但我不能将它用于系统目录。
谁能知道如何做到这一点?我对 Postgres 没有太多经验。 如果有人能帮我写这篇文章,我将不胜感激。
【问题讨论】:
标签: postgresql schema privileges
当然可以在架构上设置默认权限:
ALTER DEFAULT PRIVILEGES FOR ROLE laurenz GRANT USAGE ON SCHEMAS TO select_role;
现在,每当用户 laurenz 创建架构时,select_role 将在该架构上被授予 USAGE。
【讨论】:
感谢您的帮助。 几个小时前我正在运行它
ALTER DEFAULT PRIVILEGES FOR ROLE select_user GRANT USAGE ON SCHEMAS TO select_role ;
结果我得到了这个错误。
错误:“SCHEMAS”处或附近的语法错误
第 1 行:...LT PRIVILEGES FOR ROLE select_user GRANT USAGE ON SCHEMAS TO...
我不知道如何解决这个问题。
【讨论】: