【RocketMQ】鉴权机制
1、使用rocketMQ4.4.0以上的版本,修改plain_acl.yml配置文件,例子如下:
2、在broker.conf文件中添加配置:aclEnable=true
3、启动broker的时候查看日志aclEnable是否设置成功。
# 全局白名单,可配置rocketMQ-console的地址,这样rocketMQ-console就可进行topic的创建、删除等操作了。
globalWhiteRemoteAddresses:
accounts:- accessKey: RocketMQsecretKey: 12345678whiteRemoteAddress:admin: false# 默认topic权限。该值默认为DENY(拒绝)。defaultTopicPerm: DENY# 默认消费组权限,该值默认为DENY(拒绝),建议值为SUB。defaultGroupPerm: SUB# DENY:不允许生产(发布)和消费(订阅)消息# PUB|SUB:允许生产(发布)和消费(订阅)消息# PUB:只允许生产(发布)消息# SUB:只允许消费(订阅)消息# 指定topic的权限topicPerms:# 生产消费正常- topic01=PUB|SUB# 生产报错、消费正常- topic02=SUB# 生产正常、消费不报错也不消费- topic03=PUB# 生产报错、消费不报错也不消费- topic04=DENY # 指定某些消费组权限groupPerms:# 如果对Topic有生产消费的权限:# 生产消费正常- consumerGroup01=PUB|SUB# 生产消费正常- consumerGroup02=SUB# 生产正常,消费不报错,但是不消费- consumerGroup03=PUB# 生产正常,消费不报错,但是不消费- consumerGroup04=DENY- accessKey: rocketmq2secretKey: 12345678whiteRemoteAddress: 192.168.1.*# if it is admin, it could access all resourcesadmin: true