使用DLI相关权限功能时的一些记录
1 概述
DLI服务有一套服务内部维护的权限系统。在使用DLI时,可以发现这里的权限基本可以满足大部分场景需要,并且权限还在不断细化,覆盖更多的资源以及场景。
2 权限分类
目前DLI有权限控制的资源如下,详细信息可以参考DLI用户指南权限管理https://support.huaweicloud.com/usermanual-dli/dli_01_0440.html:
资源名称 |
资源类型 |
权限大类 |
权限小类 |
资源路径 |
DLI队列 |
queue |
队列权限 |
队列管理权限 |
queues.queuename |
队列使用权限 |
||||
DLI数据库 |
database |
数据权限 |
数据库权限 |
databases.dbname |
DLI表 |
table |
表权限 |
databases.dbname.tables.tbname |
|
DLI列 |
column |
列权限 |
databases.dbname.tables.tbname.columns.colname |
|
DLI作业 |
jobs |
作业权限 |
Flink作业 |
jobs.flink.jobId |
DLI程序包 |
resource |
程序包权限 |
程序包权限 |
resources.resourcename |
group |
程序包组权限 |
groups.groupname |
||
DLI跨源认证信息 |
datasourceauth |
跨源认证权限 |
跨源认证权限 |
datasourceauth.name |
3 授权
在DLI服务中有多种授权方式。
3.1 Console赋权
Console赋权是最常用、最方便、快捷的赋权方式,权限信息以及赋权之后的回收权限,资源信息都十分清楚。在可赋权的资源列表中,每个资源后面的操作列表中都会有权限管理一项。
队列为例:
在队列列表中,每个队列在操作一列中都会有权限管理,在权限管理中右上角有授权按钮,点击授权,就可以看到该资源的可授权权限,在用户名中填入需要授权的对象即可授权,授权之后在授权界面就可以看到已经授权的用户以及当前该用户拥有的权限。
对于已经授权的用户,在授权界面中可以通过权限设置或者回收来修改该用户已有的权限。
3.2 SQL赋权
在DLI中还有一些资源权限可以通过SQL语句授权,具体有哪些资源,请参考DLI服务提供的官方文档,地址:https://support.huaweicloud.com/sqlreference-dli/dli_08_0140.html。
用户可以在指定数据库上创建角色role,并且将该角色绑定到指定的用户上,然后将需要的权限赋权给该角色,之后用户所拥有的权限就是其上所绑定的所有角色权限的集合,当然权限回收以及权限查询都有对应的SQL。这些在资料中都有详细的介绍,示例以及使用都有介绍。
SQL也可以直接将权限赋权给指定用户,需要看具体场景自行选择。
3.3 接口赋权
在DLI中,对应Console赋权,提供了一些权限相关接口,来满足不同的场景需要,相关接口可以参考文档,在文档中相关参数使用以及请求响应示例都会有说明。https://support.huaweicloud.com/api-dli/dli_02_0037.html
- 点赞
- 收藏
- 关注作者
评论(0)