You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

测试环境配置etc-override后仍无法禁用ActiveMQ Artemis安全机制,求解决

解决ActiveMQ Artemis测试环境禁用安全仍触发认证异常的问题

可能的问题点及修复方案

1. <security-enabled>配置位置错误

你需要确保<security-enabled>false</security-enabled>放在broker.xml的<core>根节点下,而非随意添加到文件其他位置。正确结构示例:

<core xmlns="urn:activemq:core">
  <!-- 其他核心配置 -->
  <security-enabled>false</security-enabled>
  <!-- 其他核心配置 -->
</core>

2. OpenWire协议单独启用了安全校验

即使Core层面禁用了安全,OpenWire协议的Acceptor可能仍强制开启认证。需要在对应的Acceptor配置中追加securityEnabled=false参数:

<acceptors>
  <acceptor name="artemis">tcp://0.0.0.0:61616?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;amqpMinLargeMessageSize=102400;protocols=CORE,AMQP,STOMP,HORNETQ,MQTT,OPENWIRE;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpDuplicateDetection=true;securityEnabled=false</acceptor>
</acceptors>

3. 验证挂载是否生效

执行以下命令进入容器,确认挂载的配置文件内容是否正确加载:

docker exec -it artemis cat /var/lib/artemis-instance/etc-override/broker.xml

如果文件内容和你本地修改的不一致,说明挂载路径或权限存在问题,检查主机路径的读写权限,确保容器能正常访问。

4. 更简便的替代方案:使用环境变量

官方Docker镜像支持通过环境变量直接禁用安全,无需手动修改配置文件。修改启动命令如下:

docker run --detach --name artemis -p 61616:61616 -p 8161:8161 --rm -e ARTEMIS_SECURITY_ENABLED=false apache/activemq-artemis:2.30.0

内容的提问来源于stack exchange,提问作者kaffein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 09:37:35