我想将drop
特定数据库的特定架构中的所有表和函数(不仅是用户拥有的那些)和特权授予特定角色。然而,GRANT ALL PRIVILEGES
这还不够,我没有找到不让该角色成为超级用户的方法,怎么办-超级用户拥有同一服务器上其他数据库的权限,这不是我想要的。我不介意仅限于特定数据库的超级用户特权,但是我不确定该怎么做。
我的代码:
CREATE USER _administrator PASSWORD 'pwd12345';
CREATE ROLE administrator NOLOGIN ADMIN _administrator;
GRANT ALL PRIVILEGES ON DATABASE "myDB" TO administrator;
GRANT ALL PRIVILEGES ON SCHEMA public TO administrator;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO administrator;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO administrator;
GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO administrator;
administrator
是myDB
数据库管理员组,_administrator
是我的客户端应用程序能够以其身份登录的最强大的角色。
我错过或做错了什么?