角色
角色是一组用户的集合。通过GRANT把角色授予用户后,用户即具有了角色的所有权限。推荐使用角色进行高效权限分配。例如,可以为设计、开发和维护人员创建不同的角色,将角色GRANT给用户后,再向每个角色中的用户授予其工作所需数据的差异权限。在角色级别授予或撤消权限时,这些更改将作用到角色下的所有成员。
Vastbase提供了一个隐式定义的拥有所有角色的组PUBLIC,所有创建的用户和角色默认拥有PUBLIC所拥有的权限。关于PUBLIC默认拥有的权限请参考12.19.89GRANT。要撤销或重新授予用户和角色对PUBLIC的权限,可通过在GRANT和REVOKE指定关键字PUBLIC实现。
要查看所有角色,请查询系统表PG_ROLES:
SELECT * FROM PG_ROLES;
创建、修改和删除角色
非5.2.3三权分立时,只有系统管理员和具有CREATEROLE属性的用户才能创建、修改或删除角色。三权分立下,只有初始用户和具有CREATEROLE属性的用户才能创建、修改或删除角色。
要创建角色,请使用12.19.44CREATE ROLE。
要在现有角色中添加或删除用户,请使用12.19.10ALTER ROLE。
要删除角色,请使用12.19.73DROP ROLE。DROP ROLE只会删除角色,并不会删除角色中的成员用户帐户。