首页 > 数据库 > > 高斯中目前存在的权限说明(三)
role_name
角色名。参考ROLE语句说明。将角色授权给用户/角色,表示被授权的用户/角色继承role角色的所有系统权限。将角色授权给其他的角色时,不能循环授权。如:将role1授权给role2,将role2授权给role3,将role3授权给role1。
系统默认有四个角色:dba,resource,connect, statistics。各自所拥有的权限请参见《GaussDB 100 V300R001C00数据库参考信息》中的“数据字典和视图 > 用户视图 > ROLE_SYS_PRIVS”。DBA角色拥有所有系统权限,授予DBA角色给普通用户时请谨慎。
ALL [ PRIVILEGES ]
表示所有系统权限,PRIVILEGES可省略。
[ schema_name. ]
用户名。不指定时默认是当前登录用户
WITH ADMIN OPTION
此选项表示的含义如下:
grantee拥有将此系统权限/角色授权给其他用户或者角色的权限(即grant权限的传递),权限回收时,不会级联回收此用户授予其他用户的权限。
grantee拥有删除自身拥有的该系统权限或role的权限。
此选项一旦设置后,只能通过REVOKE语句将整个权限回收。不能单独回收此选项而保留权限。
object_privilege_name : 对象权限名称。不同的对象的权限集合不同。目前支持的对象类型有:表、视图、序列、存储过程、函数、触发器、系统高级包。
对象类型 | 对象是否支持此权限 | |||||||||
SELECT | UPDATE | INSERT | DELETE | INDEX | READ | REFERENCES | ALTER | EXECUTE | WRITE | |
表 | Y | Y | Y | Y | Y | Y | Y | Y | - | - |
视图 | Y | 预留 | 预留 | 预留 | - | Y | 预留 | - | - | - |
序列 | Y | - | - | - | - | - | - | Y | - | - |
存储过程 | - | - | - | - | - | - | - | - | Y | - |
触发器 | - | - | - | - | - | - | - | - | - | - |
函数 | - | - | - | - | - | - | - | - | Y | - |
系统高级包 | - | - | - | - | - | - | - | - | Y | - |
自定义高级包 | - | - | - | - | - | - | - | - | Y | - |
目录 | - | - | - | - | - | Y | - | - | 预留 | 预留 |
当前使用GRANT ALL PRIVILEGES将某个对象的权限授予用户时,将根据对象类型确定要授予/回收的权限集合。
将对象权限授予给PUBLIC时,系统中所有用户都拥有授予的该对象的权限,包括授权操作之后新增加的用户。请谨慎使用。
ALL [ PRIVILEGES ]
表示所有对象权限,PRIVILEGES可省略。
grantee
受权者。可以是用户或者角色,一次可以指定多个用户或者角色,但不能超过63个。如果grantee为PUBLIC,表示将权限授予给所有用户,包括授权之后新增加的用户。因此,授权给PUBLIC用户时,请谨慎使用。
WITH GRANT OPTION
使用with grant option。被授权用户可将所获得的权限再次授予其它用户或角色,并且权限的取消是级联的。
此选项一旦设置后,只能通过REVOKE语句将整个权限回收。不能单独回收此选项而保留权限。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3143995/ ,如需转载,请注明出处,否则将追究法律责任。