概述
访问策略可用于授予访问云拨测相关的权限。访问策略使用基于 JSON 的访问策略语言。您可以通过访问策略语言授权指定委托人(principal)对指定的云拨测资源执行指定的操作。
策略语法
CAM 策略:
{"version":"2.0","statement":[{"effect":"effect","action":["action"],"resource":["resource"],"condition": {"key":{"value"}}}]}
元素用法
版本 version 是必填项,目前仅允许值为"2.0"。
语句 statement 是用来描述一条或多条权限的详细信息。该元素包括 effect、action、resource,condition 等多个其他元素的权限或权限集合。一条策略有且仅有一个 statement 元素。
1.1 影响 effect 描述声明产生的结果是“允许”还是“显式拒绝”。包括 allow (允许)和 deny(显式拒绝)两种情况。该元素是必填项。
1.2 操作 action 用来描述允许或拒绝的操作。操作可以是 API (以 name 前缀描述)或者功能集(一组特定的 API,以 permid 前缀描述)。该元素是必填项。
1.3 资源 resource 描述授权的具体数据。资源是用六段式描述。每款产品的资源定义详情会有所区别。有关如何指定资源的信息,请参阅您编写的资源声明所对应的产品文档。该元素是必填项。
1.4 生效条件 condition 描述策略生效的约束条件。条件包括操作符、操作键和操作值组成。条件值可包括时间、IP 地址等信息。有些服务允许您在条件中指定其他值。该元素是非必填项。
指定效力
如果没有显式授予(允许)对资源的访问权限,则隐式拒绝访问。同时,也可以显式拒绝(deny)对资源的访问,这样可确保用户无法访问该资源,即使有其他策略授予了访问权限的情况下也无法访问。下面是指定允许效力的示例:
"effect" : "allow"
指定操作
云拨测定义了可在策略中指定一类控制台的操作,指定的操作按照操作性质分为读取部分接口
cat:Describe\\*
和全部接口 cat:\\*
。
指定允许操作的示例如下:"action": ["name/cat:Describe*"]
指定资源
资源(resource)元素描述一个或多个操作对象,如云拨测资源等。所有资源均可采用下述的四段式描述方式。
qcs:project_id:account:resource
参数说明如下:
参数 | 描述 | 是否必选 |
qcs | qcloud service 的简称,表示腾讯云的云服务 | 是 |
service_type | 产品简称,此处为 cat | 是 |
account | 描述资源拥有者的主账号信息,即主账号的 ID,表示为 uin/${OwnerUin} ,例如:uin/100000000001 | 是 |
resource | 描述具体资源详情,前缀为 task,例如:task-a4iiv123 | 是 |
下面是云拨测的四段式示例:
"resource":["qcs::cat:uin/1250000000:TaskId/task-a4iiv123"]
实际案例
基于资源 ID,分配指定资源的读写权限,主账号 ID 为 1250000000:
示例:为子用户分配拨测任务(ID:task-a4iiv123)修改权限。
{"version": "2.0","statement": [{"effect": "allow","action": ["cat:ModifyProbeTask"],"resource": ["qcs::cat:uin/1250000000:TaskId/task-a4iiv123"]}]}
支持资源级授权的 API 列表
API 操作名 | API 描述 |
CreateProbeTasks | 批量创建探测任务 |
DeleteProbeTask | 删除探测任务 |
DescribeConsoleConfig | 获取控制台配置,如当前用户创建任务时是否必须填写标签 |
DescribeDetailedSingleProbeData | 根据时间范围、任务 ID、运营商等条件查询单次拨测详情数据 |
DescribePaymentState | 查询费用状态 |
DescribeProbeMetricData | 列出云拨测指标详细数据 |
DescribeProbeMetricTagValues | 列出云拨测指标标签值 |
DescribeProbeNodeGroups | 查询节点组 |
DescribeProbeNodes | 查询探测节点 |
DescribeProbeTasks | 查询探测任务列表 |
DescribeProbeTasksByAddresses | 列出按地址聚合后的任务 |
ModifyProbeTask | 拨测任务修改 |
ResumeProbeTask | 恢复探测任务 |
SuspendProbeTask | 暂停探测任务 |
UpdateProbeTaskAttributes | 更新探测任务属性 |
UpdateProbeTaskConfigurationList | 批量更新探测任务配置 |