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

CAM 基本概念

主账号通过给子账号绑定策略实现授权,策略设置可精确到 [API,资源,用户/用户组,允许/拒绝,条件] 维度。

账户

主账号:拥有腾讯云所有资源,可以任意访问其任何资源。
子账号:包括子用户和协作者。
子用户: 由主账号创建,完全归属于创建该子用户的主账号。
协作者:本身拥有主账号身份,被添加作为当前主账号的协作者,则为当前主账号的子账号之一,可切换回主账号身份。
身份凭证:包括登录凭证和访问证书两种,登录凭证指用户登录名和密码,访问证书指云 API 密钥(SecretId 和 SecretKey)。

资源与权限

资源:资源是云服务中被操作的对象,在 TDMQ RabbitMQ 版中,资源有集群、Vhost、Exchange、Queue、routeRelation 等。
权限:权限是指允许或拒绝某些用户执行某些操作。默认情况下,主账号拥有其名下所有资源的访问权限,而子账号没有主账号下任何资源的访问权限
策略:策略是定义和描述一条或多条权限的语法规范。主账号通过将策略关联到用户/用户组完成授权。

相关文档

目标
链接
了解策略和用户之间关系
了解策略的基本结构
了解还有哪些产品支持 CAM

支持资源级授权的 API 列表

TDMQ RabbitMQ版支持资源级授权,您可以指定子账号拥有特定资源的接口权限。
支持资源级授权的接口列表如下:
API名
API描述
资源类型
资源六段式示例
DeleteAMQPCluster
删除 AMQP 集群
cluster
qcs::tdmq:${region}:uin/${uin}:cluster/${clusterId}
ModifyAMQPCluster
修改 AMQP 集群
cluster
qcs::tdmq:${region}:uin/${uin}:cluster/${clusterId}
CreateAMQPVHost
创建 AMQP VHost
cluster
qcs::tdmq:${region}:uin/${uin}:cluster/${clusterId}
DescribeAMQPClusters
查询 AMQP 集群列表
cluster
qcs::tdmq:${region}:uin/${uin}:cluster/${clusterId}
DescribeAMQPCluster
获取单个 AMQP 集群信息
cluster
qcs::tdmq:${region}:uin/${uin}:cluster/${clusterId}
CreateAMQPExchange
创建 AMQP Exchange
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
ModifyAMQPVHost
修改 AMQP VHost
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
DeleteAMQPVHost
删除 AMQP VHost
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
CreateAMQPQueue
创建 AMQP 队列
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
CreateAMQPRouteRelation
创建 AMQP 路由关系
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
DescribeAMQPVHostConnections
查询 AMQP VHost 连接列表
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
DescribeAMQPVHosts
查询 AMQP VHost 列表
vHost
qcs::tdmq:${region}:uin/${uin}:vHost/${clusterId}/${vHostId}
DeleteAMQPExchange
删除 AMQP Exchange
exchange
qcs::tdmq:${region}:uin/${uin}:exchange/${clusterId}/${vHostId}/${exchangeName}
ModifyAMQPExchange
修改 AMQP Exchange
exchange
qcs::tdmq:${region}:uin/${uin}:exchange/${clusterId}/${vHostId}/${exchangeName}
DescribeAMQPExchanges
查询 AMQP Exchange 列表
exchange
qcs::tdmq:${region}:uin/${uin}:exchange/${clusterId}/${vHostId}/${exchangeName}
DeleteAMQPQueue
删除 AMQP 队列
queue
qcs::tdmq:${region}:uin/${uin}:queue/${clusterId}/${vHostId}/${queueName}
DescribeAMQPQueueConsumers
获取指定队列下消费者列表
queue
qcs::tdmq:${region}:uin/${uin}:queue/${clusterId}/${vHostId}/${queueName}
ModifyAMQPQueue
修改 AMQP 队列
queue
qcs::tdmq:${region}:uin/${uin}:queue/${clusterId}/${vHostId}/${queueName}
DescribeAMQPQueues
查询 AMQP 队列列表
queue
qcs::tdmq:${region}:uin/${uin}:queue/${clusterId}/${vHostId}/${queueName}
DescribeAMQPRouteRelations
查询 AMQP 路由关系列表
routeRelation
qcs::tdmq:${region}:uin/${uin}:routeRelation/${clusterId}/${vHostId}/${routeRelationId}
DeleteAMQPRouteRelation
删除 AMQP 路由关系
routeRelation
qcs::tdmq:${region}:uin/${uin}:routeRelation/${clusterId}/${vHostId}/${routeRelationId}

不支持资源级授权的 API 列表

API 名
API 描述
资源六段式
CreateAMQPCluster
创建 AMQP 集群
*
DescribeAMQPCreateQuota
获取用户配额
*

授权方案示例

全读写策略

授权一个子用户以 TDMQ RabbitMQ 版服务的完全管理权限(创建、管理等全部操作)。
2. 在左侧菜单栏中,单击 策略
3. 在策略列表中,单击新建自定义策略
4. 在选择创建策略方式的弹窗中,选择按策略生成器创建
5. 在编辑策略页面,单击右上角导入策略语法
6. 在导入策略语法页面,搜索“TDMQ”,在搜索结果中勾选 QcloudTDMQFullAccess,单击确定
7. 在编辑策略页面,单击下一步,填写策略名称和描述,选择您要关联的用户/用户组。
8. 单击完成,完成策略创建与授权。

资源只读策略

以授权单个集群的只读权限为例。
2. 在左侧菜单栏中,单击策略
3. 在策略列表中,单击新建自定义策略
4. 在选择创建策略方式的弹窗中,选择按策略生成器创建,填写策略信息。n


参数
说明
效果(Effect)
选择允许
服务(Service)
选择腾讯分布式消息队列 (tdmq)
操作(Action)
选择读操作
资源(Resource)
选择特定资源,点击添加自定义资源六段式
地域:选择资源所在地域
账户:系统自动填充
资源前缀:clusterId
填写您要授权的集群 ID
条件(Condition)
仅当请求来自指定 IP 地址范围内时才允许访问指定操作
5. 单击下一步,填写策略名称和描述,选择您要关联的用户/用户组。
6. 单击完成,完成策略创建与授权。