授予将来创建的对象的访问权限

假设我们有 three users

  1. 数据库管理员> admin
  2. 具有完整访问权限的应用程序> read_write
  3. 只读访问> read_only

使用以下查询,你可以在将来在指定模式中创建的对象上设置访问权限。

ALTER DEFAULT PRIVILEGES IN SCHEMA myschema GRANT SELECT                      ON TABLES TO read_only;
ALTER DEFAULT PRIVILEGES IN SCHEMA myschema GRANT SELECT,INSERT,DELETE,UPDATE ON TABLES TO read_write;
ALTER DEFAULT PRIVILEGES IN SCHEMA myschema GRANT ALL                         ON TABLES TO admin;

或者,你可以为指定用户以后创建的对象设置访问权限。

ALTER DEFAULT PRIVILEGES FOR ROLE admin GRANT SELECT  ON TABLES TO read_only;