分配权限
功能描述
授予用户或角色权限。
语法格式
1
|
GRANT (privilege,...) ON (resource,..) TO ((ROLE [db_name].role_name) | (USER user_name)),...); |
关键字
ROLE:限定后面的role_name是一个角色。
USER:限定后面的user_name是一个用户。
注意事项
- privilege必须是可授权限中的一种。且如果赋权对象在resource或上一级resource上已经有对应权限时,则会赋权失败。Privilege支持的权限类型可参见数据权限列表。
- resource可以是queue、database、table、view、column,格式分别为:
- queue的格式为:queues.queue_name
操作
说明
DROP_QUEUE
删除队列
SUBMIT_JOB
提交作业
CANCEL_JOB
终止作业
RESTART
重启队列
SCALE_QUEUE
扩缩容队列
GRANT_PRIVILEGE
队列的赋权
REVOKE_PRIVILEGE
队列权限的回收
SHOW_PRIVILEGES
查看其他用户具备的队列权限
- database的格式为:databases.db_name
database支持的Privilege权限类型可参见数据权限列表。
- table的格式为:databases.db_name.tables.table_name
table支持的Privilege权限类型可参见数据权限列表。
- view的格式为:databases.db_name.tables.view_name
view支持的Privilege权限类型和table一样,具体可以参考数据权限列表中table的权限列表描述。
- column的格式为:databases.db_name.tables.table_name.columns.column_name
- queue的格式为:queues.queue_name
示例
给用户user_name1授予数据库db1的删除数据库权限。
1
|
GRANT DROP_DATABASE ON databases.db1 TO USER user_name1; |
给用户user_name1授予数据库db1的表tb1的SELECT权限。
1
|
GRANT SELECT ON databases.db1.tables.tb1 TO USER user_name1; |
给角色role_name授予数据库db1的表tb1的SELECT权限。
1
|
GRANT SELECT ON databases.db1.tables.tb1 TO ROLE role_name; |