语音消息 自定义策略

在 VMS 访问管理中使用 预设策略 来实现授权虽然方便,但权限控制粒度较粗,不能细化到 VMS 应用和 云 API 粒度。如果开发者要求精细的权限控制能力,则需要创建自定义策略。

相关产品
语音消息 产品页,含版本规格、价格与购买入口。

注意:这篇档主要介绍语音消息 VMS 访问管理功能的相关内容,其他产品访问管理相关内容请参见 支持 CAM 的产品。

一、自定义策略创建方法

自定义策略有多种创建方法,下方表格展示各种方法的对比,具体操作流程请参考下文。

创建入口 创建方法 效力(Effect) 资源 (Resource) 操作 (Action) 灵活性
CAM 控制台 策略生成器 手动选择 语法描述 手动选择 中
CAM 控制台 策略语法 语法描述 语法描述 语法描述 高
CAM 服务端 API CreatePolicy 语法描述 语法描述 语法描述 高

注意:说明:

二、资源语法描述

如上文所述,VMS 权限管理的资源粒度是应用。应用的策略语法描述方式遵循 CAM 资源描述方式。在下文的示例中,开发者的主账号 ID 是12345678,开发者创建了三个应用:App 分别是1400000000、1400000001和1400000002。

三、语音消息所有应用的策略语法描述

"resource": ["qcs::vms::uin/12345678:app/*"]

四、单个应用的策略语法描述

"resource": [ "qcs::vms::uin/12345678:app/1400000001"]

五、多个应用的策略语法描述

"resource": [ "qcs::vms::uin/12345678:app/1400000000","qcs::vms::uin/12345678:app/1400000001"]

六、操作语法描述

如上文所述,语音消息权限管理的操作粒度是云 API,详情请参见 可授权的资源及操作。在下文的示例中,以 DescribeAppList(获取应用列表)、DescribeAppInfo(获取应用信息)等云 API 为例。

七、语音消息所有云 API 的策略语法描述

"action": ["name/vms:*"]

八、单个云 API 操作的策略语法描述

"action": ["name/vms:DescribeAppList"]

九、多个云 API 操作的策略语法描述

"action": ["name/vms:DescribeAppList","name/vms:DescribeAppInfo"]

十、使用策略生成器

在下文示例中,我们将创建一个自定义策略。该策略允许对1400000001这个语音消息应用进行任何操作,除了 DeleteAppInfo 这个控制台 API。

1. 以腾讯云 主账号 的身份访问 CAM 控制台的策略,单击新建自定义策略。

2. 选择按策略生成器创建,进入策略创建页面。

3. 选择服务和操作。

·效果(Effect)配置项选择允许。

·服务(Service)配置项选择语音消息。

·操作(Action)配置项勾选读操作和写操作项后把操作名“DeleteAppInfo”这项取消勾选。

·资源(Resource)配置项按照下图指引配置。

·条件(Condition)配置项无需配置。

4. 单击下一步,按需修改策略名称(也可以不修改)。

5. 单击完成,完成自定义策略的创建。
后续将该策略授予其他子账号的方法同 将 VMS 全读写访问权限授予已存在的子账号。

十一、使用策略语法

在下文示例中,我们将创建一个自定义策略。该策略允许对1400000001和1400000002这两个语音消息应用进行任何操作,但不允许对1400000001进行 DeleteAppInfo 操作。

1. 以腾讯云 主账号 的身份访问 CAM 控制台的策略,单击新建自定义策略。

2. 选择按策略语法创建,进入策略创建页面。

3. 在选择模板类型框下选择空白模板。

注意:策略模板,指新策略是现有策略(预置策略或自定义策略)的一个拷贝,然后在此基础上做调整。在实际使用中,开发者可以根据情况选择合适的策略模板,降低编写策略内容的难度和工作量。

4. 单击下一步,按需修改策略名称(也可以不修改)。

5. 在编辑策略内容编辑框中填写策略内容。本示例的策略内容为:

{"version": "2.0","statement": [ { "effect": "allow", "action": [ "name/vms:*" ], "resource": [ "qcs::vms::uin/12345678:app/1400000001", "qcs::vms::uin/12345678:app/1400000002" ]},{ "effect": "deny", "action": [ "name/vms:DeleteAppInfo" ], "resource": [ "qcs::vms::uin/12345678:app/1400000001" ]}]}

注意:策略内容需遵循 CAM 策略语法逻辑,其中资源和操作两个元素的语法请参见上文 资源语法描述 和 操作语法描述 所述。

6. 单击创建策略完成自定义策略的创建。
后续将该策略授予其他子账号的方法同 将 VMS 全读写访问权限授予已存在的子账号。

赞 (0)
上一篇 4天前
下一篇 4天前