上云无忧 > 文档中心 > 腾讯云消息队列 RocketMQ - 角色与授权
消息队列 RocketMQ 版
腾讯云消息队列 RocketMQ - 角色与授权

文档简介:
名词解释: RocketMQ 的“角色”是 RocketMQ 内专有的概念,区别于腾讯云的“角色”,是用户自行在 RocketMQ 内部做权限划分的最小单位,用户可以添加多个角色并为其赋予不同集群下的生产和消费权限。每种角色都有其对应的唯一密钥,用户可以通过在客户端中添加密钥来访问 RocketMQ 进行消息的生产消费。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

名词解释

RocketMQ 的“角色”是 RocketMQ 内专有的概念,区别于腾讯云的“角色”,是用户自行在 RocketMQ 内部做权限划分的最小单位,用户可以添加多个角色并为其赋予不同集群下的生产和消费权限。每种角色都有其对应的唯一密钥,用户可以通过在客户端中添加密钥来访问 RocketMQ 进行消息的生产消费。
使用场景如下:
用户需要安全地使用 RocketMQ 进行消息的生产消费。
用户需要对不同的集群设置不同角色的生产消费权限。
例如:一个公司有 A 部门和 B 部门,A 部门的系统产生交易数据,B 部门的系统根据这些交易数据做数据分析和展示。那么遵循权限最小化原则,可以配置两种角色,A 部门角色只授予往交易系统集群中生产消息的权限,B 部门则只授予消费消息的权限。这样可以很大程度避免由于权限不清带来的数据混乱、业务脏数据等问题。

操作步骤

添加角色并授权

1. 登录 RocketMQ 控制台
2. 在左侧导航栏选择集群列表,选择地域后,点击要配置角色的集群的“ ID ”,进入基本信息页面。
3. 在页面上方选择集群权限页签,单击添加角色,输入角色名称,并配置好生产和消费权限。
4. 单击保存,完成角色创建。

检查权限是否生效

1. 在集群权限列表复制角色密钥。

注意
密钥泄露很可能导致您的数据泄露,请妥善保管您的密钥。
2. 将复制的角色密钥添加到客户端的参数中。如何在客户端代码中添加密钥参数请参考 RocketMQ 的 代码示例
以下给出一种推荐的方式。
2.1 声明ACL_SECRET_KEYACL_SECRET_ACCESS两个字段,使用各类框架的话建议从配置文件中读取。
		
private static final String ACL_ACCESS_KEY = "eyJr****";
private static final String ACL_SECRET_KEY = "xxx"; /
2.2 声明一个静态函数,用于载入一个 RocketMQ Client 的 RPCHook对象。
		
static RPCHook getAclRPCHook() {
return new AclClientRPCHook(new SessionCredentials(ACL_ACCESS_KEY, ACL_SECRET_KEY));
}
2.3 在创建 RocketMQ producerpushConsumerpullConsumer的时候,引入 RPCHook对象。 以下为创建一个 producer 的代码示例:
		
DefaultMQProducer producer = new DefaultMQProducer("rocketmq-mw***|namespace", "ProducerGroupName", getAclRPCHo
3. 运行配置好的客户端访问对应集群中的 Topic 资源,按照刚刚配置的权限进行生产或消费,看是否会产生没有权限的报错信息,如果没有即代表配置成功。

编辑权限

1. 在集群权限列表中,找到需要编辑权限的角色,单击操作列的编辑

2. 在编辑的弹框中,修改权限信息后,单击保存

删除角色

注意
删除角色后,原先使用该角色进行生产或消费消息的密钥( accessKey 和 accessSecret )将立即失效。请确保当前业务已经没有使用该角色进行消息的生产消费,否则可能会出现客户端无法生产消费而导致的异常。
1. 在集群权限列表中,找到需要删除权限的角色,单击操作列的删除

2. 在删除的弹框中,单击删除,即可删除该角色。

相似文档
  • 操作场景: Topic 是 TDMQ RocketMQ 版中的核心概念。Topic 通常用来对系统生产的各类消息做一个集中的分类和管理,例如和交易的相关消息可以放在一个名为 “trade” 的 Topic 中,供其他消费者订阅。
  • 操作场景: Group 用于标识一类 Consumer,这类 Consumer 通常消费同一类消息,且消息订阅的逻辑一致。 该任务指导您使用消息队列 TDMQ RocketMQ 版时在控制台上创建,删除和查询 Group。
  • 操作场景: TDMQ RocketMQ 支持监控您账户下创建的资源,包括集群、Topic、Group 等,您可以根据这些监控数据,分析集群的使用情况,针对可能存在的风险及时处理。同时您也可以对监控项设置报警规则,以便数据异常时收到报警消息,及时处理风险,保障系统的稳定运行。
  • 当一条消息从生产者发送到 TDMQ RocketMQ 版服务端,再由消费者进行消费,TDMQ RocketMQ 版会完整记录这条消息中间的流转过程,并以消息轨迹的形式呈现在控制台。 消息轨迹记录了消息从生产端到 TDMQ RocketMQ 版服务端,最后到消费端的整个过程,包括各阶段的时间(精确到微秒)、执行结果、生产者 IP、消费者 IP 等。
  • 为了给业务处理业务失败,给消息消费失败的情况兜底,保证消息生命周期的完整,RocketMQ 实现了消费失败后重试的策略。 如果您使用的是 RocketMQ 4.x 客户端,消息的重试次数以您在客户端内设置消息重试次数为准。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部