·用户与权限分配:根据企业组织架构,为不同职能部门成员创建独立的用户或角色,并分配专属安全凭证(控制台登录密码、云 API 密钥等)或获取临时安全证书,确保安全可控地访问 RocketMQ 资源。
·精细化权限控制:基于员工职能设置差异化的访问策略,精确控制每个用户/角色可执行的操作类型和可访问的资源范围,实现严格的权限隔离。
一、账号体系介绍
不同账号类型的能力差异和相关参考文档如下:
| 账号类型 | 主账号 | 子账号 | | | |
| | | 子用户 | 企业微信子用户 | 协作者 | 消息接收人 |
| 定义 | 拥有腾讯云所有资源,可以任意访问其任何资源。 | 由主账号创建,完全归属于创建该子用户的主账号。 | 由主账号通过企业微信可见范围导入,完全归属于创建该企业微信子用户的主账号。 | 本身拥有主账号身份,被添加作为当前主账号的协作者,则为当前主账号的子账号之一,可切换回主账号身份。 | 仅拥有消息接收功能。 |
| 控制台访问 | ✔ | ✔ | 默认支持控制台登录 | ✔ | – |
| 编程访问 | ✔ | ✔ | ✔ | ✔ | – |
| 策略授权 | 默认已拥有全部策略 | ✔ | ✔ | ✔ | – |
| 消息通知 | ✔ | ✔ | ✔ | ✔ | ✔ |
| 参考文档 | 主账号相关 | 新建子用户 | 通过企业微信导入子用户 | 新建协作者 | 新建消息接收人 |
注意:为了确保你的腾讯云账号及云资源使用安全,如非必要都应避免直接使用腾讯云主账号对资源进行操作,应创建子账号并按照最小权限原则授予策略,使用权限范围有限的子账号操作你的云资源。
二、策略
策略用于定义和描述一条或多条权限的语法规范。默认情况下,主账号拥有其名下所有资源的访问权限,而子账号没有主账号下任何资源的访问权限。
主账号可以通过将策略关联到用户/用户组使其具备查看和使用特定资源的权限。腾讯云的策略类型分为预设策略和自定义策略。
三、预设策略
RocketMQ 为子账号提供了两种预设策略:
| TDMQ RocketMQ 版本 | 策略 | 描述 |
| 4.x | QcloudTDMQFullAccess | 全读写访问权限,可以在产品控制台进行读写等相关操作 |
| | QcloudTDMQReadOnlyAccess | 只读访问权限,仅能查看控制台的相关信息 |
| 5.x | QcloudTrocketFullAccess | 全读写访问权限,可以在产品控制台进行读写等相关操作 |
| | QcloudTrocketReadOnlyaccess | 只读访问权限,仅能查看控制台的相关信息 |
四、自定义策略
如果系统权限策略不能满足你的要求,你可以创建自定义权限策略实现最小授权,策略设置可精确到 [API,资源,用户/用户组,允许/拒绝,条件] 维度,使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。
目前腾讯云提供以下两种灵活的自定义策略创建方式,满足不同使用习惯和需求:
·可视化视图:采用向导式操作,用户无需了解策略语法即可通过界面选择云服务、操作、资源、条件等要素,由系统自动生成策略,降低使用门槛。
·JSON 视图:可以在选择策略模板后,根据具体需求编辑策略内容;也可以直接在编辑框内编写 JSON 格式的策略内容。适合有一定技术基础的用户。
自定义策略示例
被授予该权限策略的子账号只具有对实例 mp-xxx 的查询实例、查询消费组详情、查询消息的控制台和 API 的权限。
{ "version": "2.0", "statement": [ { "effect": "allow", "action": [ "trocket:DescribeConsumerGroup", "trocket:DescribeInstance", "trocket:DescribeMessage" ], "resource": [ "qcs::trocket::uin/1000****1002:instance/rmq-xxxx" ] } ]}
五、子账号授权操作
子账号使用 RocketMQ 时,需要对两方面进行授权:
| 类型 | 说明 | 参考文档 |
| 访问其他云产品权限 | 使用 RocketMQ 的过程中,需访问用户其他的云产品资源(VPC、CVM 等),如查看用户子网所在的可用区信息等场景。 | 授予子账号其他云产品权限 |
| RocketMQ 资源的读写权限 | 获取 RocketMQ 资源的读写权限。 | 授予子账号操作级权限授予子账号资源级权限授予子账号标签级权限 |
六、相关文档
| 目标 | 链接 |
| 了解策略和用户之间关系 | 策略管理 |
| 了解策略的基本结构 | 策略语法 |
| 了解还有哪些产品支持 CAM | 支持 CAM 的产品 |