activemq 安全连接

一、client连接broker

1.1 simple xml configuration

activemq.xml配置

<plugins> 
          <simpleAuthenticationPlugin> 
             <users> 
                 <authenticationUser username="admin" password="password"  groups="admins,publishers,consumers"/>
                 <authenticationUser username="publisher" password="password" groups="publishers,consumers"/> 
                 <authenticationUser username="consumer" password="password" groups="consumers"/> 
                 <authenticationUser username="guest" password="password" groups="guests"/> 
             </users> 
          </simpleAuthenticationPlugin> 
</plugins>

客户端代码

activeMQConnectionFactory.createConnection("admin","password");

1.2 JAAS

增加login.config文件

activemq {
    org.apache.activemq.jaas.PropertiesLoginModule required
        org.apache.activemq.jaas.properties.user="users.properties"
        org.apache.activemq.jaas.properties.group="groups.properties"
        reload=true;
};

注:reload设置为true时,用户名和密码在每次请求的时候都会重新加载,即修改之后立即生效。

增加users.properties

system=manager
admin=password
user=password
guest=password
sslclient=CN=localhost, OU=activemq.org, O=activemq.org, L=LA, ST=CA, C=US

增加groups.properties

admins=system,sslclient,client,broker1,broker2
tempDestinationAdmins=system,user,sslclient,client,broker1,broker2
users=system,user,sslclient,client,broker1,broker2
guests=guest

activemq.xml配置

        <plugins> 
           <jaasAuthenticationPlugin configuration="activemq" /> 
           <authorizationPlugin> 
               <map> 
                 <authorizationMap> 
                    <authorizationEntries>
                     <authorizationEntry queue="yyc-test" read="guests" write="users" admin="admins" />
                     <authorizationEntry topic="ActiveMQ.Advisory.>" read="all" write="all" admin="all"/>
                   </authorizationEntries>
                   <tempDestinationAuthorizationEntry>
                     <tempDestinationAuthorizationEntry read="tmpDestinationAdmins" write="tmpDestinationAdmins" admin="tmpDestinationAdmins"/>
                   </tempDestinationAuthorizationEntry>
                 </authorizationMap> 
           </map> 
           </authorizationPlugin>
        </plugins>

注:

configuration的值要与login.config中的设置名称相匹配,如:activemq;

ActiveMQ.Advisory.>以表达式的方式配置的topic一定要设置。因为连接的时候就是这种类型的主题,如果不配置此项话,连接会报错(没有权限)。

1.3 LDAP

参考地址:http://activemq.apache.org/security.html

二、broker与broker之间的连接

<networkConnectors>
   <networkConnector name="brokerAbridge"
                     userName="user"
                     password="password"
                     uri="static://(tcp://brokerA:61616)"/>
</networkConnectors>

参考地址:http://activemq.apache.org/security.html

时间: 2024-12-14 18:04:35

activemq 安全连接的相关文章

分布式-信息方式-ActiveMQ静态网络连接信息回流功能

"丢失"的消息 有这样的场景, broker1和 broker2通过 netwoskconnector连接,一些 consumers连接到 broker1,消费 broker2上的消息.消息先被 broker1从 broker2上消费掉,然后转发给这些 consumers.不幸的是转发部分消息的时候 broker1重启了,这些 consumer发现 broker1连接失败,通过 failover连接到 broker2上去了,但是有一部分他们还没有消费的消息被 broker2已经分发到了

activeMQ查看连接线程

ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(         ActiveMQConnection.DEFAULT_USER,         ActiveMQConnection.DEFAULT_PASSWORD,         ActiveMQConnection.DEFAULT_BROKER_URL); Thread.currentThread().getThreadGroup().list(); /

ActiveMQ修改连接的用户名密码

安装目录下conf/activemq.xml 添加如下内容: 原文地址:https://www.cnblogs.com/dicke/p/8666146.html

消费者端的Spring JMS 连接ActiveMQ接收生产者Oozie Server发送的Oozie作业执行结果

一,介绍 Oozie是一个Hadoop工作流服务器,接收Client提交的作业(MapReduce作业)请求,并把该作业提交给MapReduce执行.同时,Oozie还可以实现消息通知功能,只要配置好消息服务器,Oozie Server就可以把作业的执行结果发送到消息服务器上,而Client只需要订阅其感兴趣的消息即可.具体的配置参考这篇文章:Oozie 使用ActiveMQ实现 JMS通知 由于Spring内置了JMS相关的服务,因此这里记录在Spring中如何配置消费者连接ActiveMQ,

架构设计:系统间通信(22)——提高ActiveMQ工作性能(上)

接上文<架构设计:系统间通信(21)--ActiveMQ的安装与使用> 3.ActiveMQ性能优化思路 上篇文章中的两节内容,主要介绍消息中间件ActiveMQ的安装和基本使用.从上篇文章给出的安装配置和示例代码来看,我们既没有修改ActivieMQ服务节点的任何配置,也没有采用任何的集群方案.这种情况只适合各位读者熟悉ActiveMQ的工作原理和基本操作,但是如果要将ActivieMQ应用在生产环境下,上文中介绍的运行方式远远没有挖掘出它的潜在性能. 根据这个系列文章所陈述的中心思想,系统

springJMS+activeMQ实践

运行环境:jdk1.6 ,javaEE5 , spring2.5 ,activeMQ5.4.3. 一定要注意activeMQ的版本与jdk的兼容性,最新的activeMQ版本估计要在jdk1.7以上才能运行. 先说一下activeMQ的安装: 1.下载:http://activemq.apache.org/download.html 选择合适的Windows版本 2.安装 (1) 首先配置JAVA环境变量 JAVA_HOME=D:\Program Files\Java\jdk1.5.0 CLAS

activeMQ学习

activeMq 一个项目的Service  调用另一个项目的service 下载安装包  环境linux 创建文件夹 mkdir  activemq 解压命令 tar  -zvxf   mq文件 Cd 文件的bin目录 ./activemq  start Linux安装activeMq  http://www.cnblogs.com/lyxy/p/5969116.html 61616是mq服务默认端口: netstat -ntlp|grep 8161 netstat -an|grep 6161

消息队列ActiveMQ

一:为什么要使用消息队列呢? 在开发上一个APP后台时候,其中很重要的一块就是消息,通讯模块,使用的是开源的Openfire. 架构: 两台API服务器 两台Openfire服务器 若干数据库服务器集群 其中业务的很大一部分都需要发送消息,用户下了订单,用户取消订单,等等都需要服务器给用户来发送消息.使用的解决方式就是在Openfire的基础上规定了自己的消息格式.用户去操作,然后API服务器通知Openfire服务器去发送消息.Openfire服务器去接受来自API服务器的请求,然后去给用户发

ActiveMq 总结(二)

4.2.6 MessageConsumer MessageConsumer是一个由Session创建的对象,用来从Destination接收消息. 4.2.6.1 创建MessageConsumer Java客户端: ActiveMQSession方法: MessageConsumer createConsumer(Destination destination); MessageConsumer createConsumer(Destination destination, String me