解决RocketMQ-Dashboard开启登录认证后不生效

解决RocketMQ-Dashboard开启登录认证后不生效

问题发现

在学习RocketMQ-Dashboard 时候,开启ACL认证后,访问页面不跳转登录页面。

使用版本号:rocketmq-all-5.4.0-bin-releaserocketmq-dashboard-2.1.0

rocketmq-all-5.4.0-bin-release/conf/broker.conf,配置内容如下:

perl 复制代码
# 启用认证
authenticationEnabled = true
authenticationMetadataProvider = org.apache.rocketmq.auth.authentication.provider.LocalAuthenticationMetadataProvider

# 启用授权
authorizationEnabled = true
authorizationMetadataProvider = org.apache.rocketmq.auth.authorization.provider.LocalAuthorizationMetadataProvider

# 初始化可视化管理员用户(首次启动自动创建,acl的账号密码)
initAuthenticationUser = {"username":"rocketmq","password":"12345678"}

# 组件间认证凭证(用于Broker主从同步、集群内部通信等)
innerClientAuthenticationCredentials = {"accessKey":"rocketmq","secretKey":"12345678"}

然后设置rocketmq-dashboard,开启登录认证(打开源码项目修改src/main/resources/application.yml),配置内容如下:

yml 复制代码
rocketmq:
  config:
    namesrvAddrs:
      - 127.0.0.1:9876
    loginRequired: true

然后部署到服务器,执行命令:

先启动Name Server,执行命令:

bash 复制代码
nohup sh bin/mqnamesrv &

再启动Broker,执行命令:

bash 复制代码
nohup sh bin/mqbroker -n localhost:9876  -c ../conf/broker.conf &

然后启动rocketmq-dashboard

bash 复制代码
java -jar rocketmq-dashboard-2.1.0.jar

启动后访问http://ip:8082/地址直接进入首页,如图所示:

问题解决

最先开始以为是打包有问题,重试后依旧不生效。

然后问AI就跟我说是因为users.properties文件找不到、服务启动覆盖loginRequired,改为false,经过它介绍的一系列操作,依旧不生效。

然后我就给rocketmq-dashboard降级,下载了rocketmq-dashboard-2.0.0,配置内容跟上面一样,打包编译后,发布服务器。

然后访问http://127.0.0.1:8080/地址(该版本启动的端口默认8080),如图所示:

生效成功。但是我觉得这个页面不太好看,还是想换成最新版的(后续查看Github最新版貌似挺多坑的)。

然后我又去Github把源码下载下来,按照上面的配置和操作重新运行,该版本已经更新成rocketmq-dashboard 2.1.1-SNAPSHOT

http://127.0.0.1:8082/地址,如图所示:

生效成功。

至于为什么2.1.0版本开启验证后不跳转登录页面,估计是有BUG ,再2.1.1被修复了(不过还是建议使用2.0.0)。

相关推荐
cfm_29141 天前
RocketMQ源码深度解析(三)消息持久化机制
rocketmq
不惑_4 天前
手摸手教你在腾讯云CVM搭建RocketMQ
云计算·rocketmq·腾讯云
东方巴黎~Sunsiny4 天前
实战:RocketMQ 幂等 + Redis 分布式锁 + 异常重试 保姆级教程
redis·分布式·rocketmq
cfm_29145 天前
RocketMQ源码深度解析(二)Netty通信、Broker心跳注册、消息收发、客户端负载均衡原理
负载均衡·rocketmq
JAVA面经实录9175 天前
RocketMQ全套学习知识手册
java·kafka·rabbitmq·rocketmq
我是一颗柠檬6 天前
【Java项目技术亮点】多级缓存一致性方案:Canal+MQ实现数据库与缓存的最终一致
java·数据库·spring·缓存·kafka·rocketmq
真香号6 天前
记一次生产RocketMQ消息积压消费慢的排查与解决
数据库·rocketmq·java-rocketmq
Tenifs7 天前
深入对比分析 RabbitMQ、RocketMQ 和 Kafka
后端·kafka·消息队列·rabbitmq·rocketmq·爱编程的阿彬
Rick19937 天前
Kafka、RocketMQ、RabbitMQ 三大消息队列
kafka·rabbitmq·rocketmq
仙俊红7 天前
rocketmq学习
大数据·学习·rocketmq