0.背景介绍

  由于项目安全性的约束,不能在配置文件中暴露一些密码信息。

    默认情况下,ActiveMQ在进行接发消息的时候会用户认证。通过ActiveMQ-client初始化ActiveMQConnectionFactory的时候,我们会将用户名和密码暴露在配置文件中。如果对密码进行加密,在程序启动的时候进行解密。有可能存在一点代码量上的改造,【临近上线,这个方案暂时被PASS】。

  想通过ActiveMQ服务端去除认证,解决如上所述问题。

1.去除认证

    修改ActiveMQ服务端的配置文件。($ActiveMQ_dir/conf/activemq.xml)

    在<plugins>节点中注释下列认证方式:

      <!--  <jaasAuthenticationPlugin configuration="activemq" />  -->

    在<plugins>节点中添加下列认证方式:

      <simpleAuthenticationPlugin anonymousAccessAllowed=“true”>

                <users>

         <authenticationUser username="admin" password="manager"

    groups="users,admins"/>

                </users>

          </simpleAuthenticationPlugin>

  <!--  Lets configure a destination based authorization mechanism -->

         <authorizationPlugin>

    <map>

              <authorizationMap>

       <authorizationEntries>

                      <authorizationEntry queue=">" read="admins,anonymous" write="admins,anonymous" admin="admins,anonymous" />

                      <authorizationEntry topic=">" read="admins,anonymous" write="admins,anonymous" admin="admins,anonymous" />

                      <authorizationEntry topic="ActiveMQ.Advisory.>" read="guests,users,anonymous" write="guests,users,anonymous" admin="guests,users,anonymous"/>

                  </authorizationEntries>

              </authorizationMap>

            </map>

        </authorizationPlugin>

上面配置即是通过认证插件,在接发Query/Topic/ ActiveMQ.Advisory的时候支持匿名用户。

2.测试

  带用户名/密码的配置:

  <bean id="amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">

    <constructor-arg index="0" value="${jms.broker.username}"/>

          <constructor-arg index="1" value="${jms.broker.password}"/>

    <constructor-arg index="2" value="${jms.broker.url}"/>

          <property name="useAsyncSend" value="true"/>

     </bean>

  不带用户名/密码的配置:

  <bean id="amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">

    <constructor-arg index="0" value="${jms.broker.url}"/>

          <property name="useAsyncSend" value="true"/>

</bean>

  实现结果:修改服务端的配置,客户端去除认证配置。对收发消息无影响。

3.资料参考

  ActiveMQ Security:

  http://activemq.apache.org/security.html

Activemq去除认证的更多相关文章

  1. ActiveMQ 安全认证

    修改配置文件 位置: apache-activemq-5.9.0/conf/ vi activemq.xml 在<broker xmlns="http://activemq.apach ...

  2. Linux:去除认证,加速 SSH登录

    编辑配置文件 /etc/ssh/sshd_config vim /etc/ssh/sshd_config 找到 UseDNS选项,如果没有注释,将其注释 #UseDNS yes 添加 UseDNS n ...

  3. ActiveMQ in Action(4) - Security

    关键字: activemq 2.4 Security    ActiveMQ支持可插拔的安全机制,用以在不同的provider之间切换.2.4.1 Simple Authentication Plug ...

  4. activemq用户手册

    1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是客户用来创建连接的对象,例如ActiveMQ提供的ActiveMQCon ...

  5. 转--activemq的官方中文文档

    1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是客户用来创建连接的对象,例如ActiveMQ提供的ActiveMQCon ...

  6. activeMQ 讲解及实战

    #### 软件架构项目中需要用到activeMQ 下载地址:http://activemq.apache.org/download.html #### 安装教程需要安装jdk环境activeMQ免安装 ...

  7. ActiveMQ基本使用

    消息队列,目前在实际的开发项目中应用十分广泛.本文主要介绍入门级的ActiveMQ的基本使用以及相关的概念. 一.JMS 全称 Java Message Service,即Java消息服务.JMS是一 ...

  8. 错误: No API token found for service account "default",

    [root@kubernetes-master pods]# kubectl create -f mysql.yaml Error from server (ServerTimeout): error ...

  9. 46.ActiveMQ开篇(Hello World、安全认证、Connection、Session、MessageProducer、MessageConsumer)

    要给有能力的人足够的发挥空间,公司可以养一些能力平平甚至是混日子的人,但绝不能让这些人妨碍有能力的人,否则这样的环境不留也罢. 一.背景介绍 CORBA\DCOM\RMI等RPC中间件技术已经广泛应用 ...

随机推荐

  1. 用@property (copy) NSMutableArray *array;会有什么问题?

    我们县回忆一下copy属性的作用,一个属性标记了copy,当你调用他的setter方法,他会建立一个索引计数为1的对象,然后释放旧对象. @property (copy) NSMutableArray ...

  2. [POI2011]MET-Meteors 整体二分_树状数组_卡常

    线段树肯定会 TLE 的,必须要用树状数组. Code: // luogu-judger-enable-o2 #include <cstdio> #include <algorith ...

  3. NodeJS学习笔记 (13)数据加密-crypto(OK)

    写在前面 本章节写得差不多了,不过还需要再整理一下(TODO). hash例子 hash.digest([encoding]):计算摘要.encoding可以是hex.latin1或者base64.如 ...

  4. ZOJ-3261 Connections in Galaxy War 并查集 离线操作

    题目链接:https://cn.vjudge.net/problem/ZOJ-3261 题意 有n个星星,之间有m条边 现一边询问与x星连通的最大星的编号,一边拆开一些边 思路 一开始是真不会,甚至想 ...

  5. ECNUOJ 2859 表达式的个数

    表达式的个数 Time Limit:5000MS Memory Limit:65536KBTotal Submit:47 Accepted:28 Description  世情薄,人情恶,雨送黄昏花易 ...

  6. eclipse调试(debug)弹出错误

    原创:http://www.cnblogs.com/lanhj/p/3874426.html 警告信息: Cannot connect to VM com.sun.jdi.connect.Transp ...

  7. BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第9章节--client对象模型和REST APIs概览 JavaScript

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第9章节--client对象模型和REST APIs概览  JavaScript         与托管.NETclien ...

  8. ti-sdk-evm-am335x-05.07 uboot分析(MLO跳转到u-boot之前)

    --------------------------------------------------------------------------------                     ...

  9. IIS集成和经典配置

    检測到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为[经典]模式).  我们将ASP.NET程序从IIS6移植到IIS7,可能执行提示下面错误: HTTP 错误 500. ...

  10. .Net商品管理(注释,百度,提问,对比,总结)

    管理控制器 using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sys ...