自定义策略
如果系统预置的DataArts Insight权限,不满足您的授权要求,可以创建自定义策略。自定义策略中可以添加的授权项(Action)请参考权限策略和授权项。
目前华为云支持以下两种方式创建自定义策略:
- 可视化视图创建自定义策略:无需了解策略语法,按可视化视图导航栏选择云服务、操作、资源、条件等策略内容,可自动生成策略。
- JSON视图创建自定义策略:可以在选择策略模板后,根据具体需求编辑策略内容;也可以直接在编辑框内编写JSON格式的策略内容。
具体创建步骤参考:创建自定义策略。本章为您介绍常用的DataArts Insight自定义策略样例。
策略字段介绍
以授权用户拥有在所有区域中所有数据库的创建表权限为例进行说明:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "dataartsinsight:datasource:get" ], "Resource": [ "DataArtsInsight:*:*:workspace:*" ] } ] }
- Version
- Effect
- Action
授权项,指对资源的具体操作权限,不超过100个,如图1所示。
- 格式为:服务名:资源类型:操作,例:dataartsinsight:datasource:get。
- 服务名为产品名称,例如dataartsinsight、evs和vpc等,服务名仅支持小写。资源类型和操作没有大小写,要求支持通配符号*,无需罗列全部授权项。
- 操作:操作以IAM服务中已经注册的action为准。
- Condition
条件键表示策略语句的 Condition 元素中的键值,分为全局级条件键和服务级条件键。
- 全局级条件键(前缀为g:)适用于所有操作。详细请参考策略语法中的条件键说明。
- 服务级条件键,仅适用于对应服务的操作。
运算符与条件键一起使用,构成完整的条件判断语句。具体内容请参考表1。
DataArts Insight通过IAM预置了一组条件键。下表显示了适用于DataArts Insight服务特定的条件键。
表1 DataArts Insight请求条件 DataArts Insight条件键
类型
运算符
描述
g:CurrentTime
全局级
Date and time
接收到鉴权请求的时间。
说明:以“ISO 8601”格式表示,例如:2012-11-11T23:59:59Z。
g:MFAPresent
全局级
Boolean
用户登录时是否使用了多因素认证。
g:UserId
全局级
String
当前登录的用户ID。
g:UserName
全局级
String
当前登录的用户名。
g:ProjectName
全局级
String
当前登录的Project。
g:DomainName
全局级
String
当前登录的Domain。
g:ResourceTag
全局级
StringEquals
资源标签键值。
- Resource
格式为:服务名:region:domainId:资源类型:资源路径, 通配符号*表示所有。
示例:
"DataArtsInsight:*:*:workspace:*": 表示所有的工作空间资源。
创建DataArts Insight自定义策略
用户可以根据场景设置不同级别的Action和Resource。
- 定义Action
Action由服务名:资源类型:操作三段组成,通配符为*。例如:
表2 Action Action
说明
dataartsinsight:datasource:get
获取数据源详情
dataartsinsight:dataset:preview
预览数据集
dataartsinsight:screen:view
预览数据大屏
更多操作与系统权限的关系请参考DataArts Insight常用操作与系统权限的关系。
- 定义Resource
Resource由<服务名:region:domainId:资源类型:资源路径>5个字段组成,通配符号*表示所有资源。5个字段可以灵活设置,资源路径可以按照场景需要,设置不同级别的权限控制。当需要设置该服务下的所有资源时,可以不指定该字段。Resource定义请参考表3。
- 特定资源:
图2 特定资源
- 所有资源: 指该服务下的所有资源
图3 所有资源
- 特定资源:
- 将上述的所有字段拼接为一个json就是一个完整的策略了,其中action和resource均可以设置多个,当然也可以通过IAM提供的可视化界面进行创建。