有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

概述

访问策略可用于授予访问腾讯云数据仓库 TCHouse-P 集群的权限。访问策略使用基于 JSON 的访问策略语言。您可以通过访问策略语言授权指定委托人(principal)对指定的腾讯云数据仓库 TCHouse-P 集群资源执行指定的操作。
访问策略语言描述了策略的基本元素和用法,有关策略语言的说明可参考 CAM 策略管理

访问策略中的元素

访问策略语言包含以下基本意义的元素:
语句(statement):描述一条或多条权限的详细信息。该元素包括效力、操作、资源、条件等多个其他元素的权限或权限集合。一条策略有且仅有一个语句元素。
效力(effect):描述声明产生的结果是“允许”还是“显式拒绝”,包括 allow 和 deny 两种情况。该元素是必填项。
操作(action):描述允许或拒绝的操作。操作可以是 API(以 name 前缀描述)或者功能集(一组特定的 API,以 permid 前缀描述)。该元素是必填项。
资源(resource):描述授权的具体数据。资源是用六段式描述。每款产品的资源定义详情会有所区别。该元素是必填项。
条件(condition):描述策略生效的约束条件。条件包括操作符、操作键和操作值组成。条件值可包括时间、IP 地址等信息。有些服务允许您在条件中指定其他值。该元素是选填项。

元素用法

指定效力

如果没有显式授予(允许)对资源的访问权限,则隐式拒绝访问。同时,也可以显式拒绝(deny)对资源的访问,这样可确保用户无法访问该资源,即使有其他策略授予了访问权限的情况下也无法访问。下面是指定允许效力的示例:
"effect" : "allow"

指定操作

腾讯云数据仓库 TCHouse-P 定义了可在策略中指定一类控制台的操作,指定的操作按照操作性质分为读取部分接口(cdwpg:Describe*)和全部接口(cdwpg:*)。
指定允许操作的示例如下:
"action": [
"name/cdwpg:Describe*"
]

指定资源

资源(resource)元素描述一个或多个操作对象,如腾讯云数据仓库 TCHouse-P 集群资源等。所有资源均可采用下述的六段式描述方式。
qcs:project_id:service_type:region:account:resource
参数说明如下:
参数
描述
是否必选
qcs
是 qcloud service 的简称,表示是腾讯云的云服务
project_id
描述项目信息,仅为了兼容 CAM 早期逻辑,一般不填
service_type
这里为 cdwpg
region
描述地域信息
account
描述资源拥有者的主账号信息,即主账号 UIN,表示为 uin/${OwnerUin},如 uin/100000000001
resource
描述具体资源详情,前缀为 cdwpg-instance
下面是一个腾讯云数据仓库 TCHouse-P 集群的六段式信息:
"resource":["qcs::cdwpg:ap-guangzhou:uin/100000000001:cdwpg-instance/snova-73jingds"]

指定条件

访问策略语言可使您在授予权限时指定条件。在腾讯云数据仓库 TCHouse-P 场景下主要是用于设置标签鉴权,标签条件只对绑定了该标签的集群生效,标签策略示例如下:
"condition": {
"for_any_value:string_equal": {
"qcs:tag": [
"jing&jingfdd"
]
}
}
这个语句含义是策略包含标签 key 为 jing,value 为 jingfdd 的资源。

实际案例

如下案例中,策略的含义是允许访问 UIN 为1250000000下面的集群 ID 为 snova-jidnshgdsh 的资源,以及绑定了标签键为 testkey,标签值为 testvalue 的资源。
{
"version": "2.0",
"statement": [
{
"action": [
"name/cdwpg:Describe*",
],
"condition": {
"for_any_value:string_equal": {
"qcs:tag": [
"testkey&testvalue"
]
}
},
"effect": "allow",
"resource": [
"qcs::cdwpg:ap-guangzhou:uin/1250000000:cdwpg-instance/snova-jidnshgdsh"
]
}
]
}