(1)设置证书文件,放用户名和密码:${activemq.base}/conf/credentials.properties
Html代码 收藏代码
activemq.username=logcd
activemq.password=028cd
(2)配置simpleAuthenticationPlugin,简单认证插件
Xml代码 收藏代码
Xml代码 收藏代码
(3)在connectionFactory中,使用用户名和密码。
Java代码 收藏代码
ConnectionFactory cf = new ActiveMQConnectionFactory("logcd", "028cd", "tcp://195.2.199.169:61616")
Xml代码 收藏代码
二、ActiveMQ Web Console Security
ActiveMQ缺省的管理是通过内置的jetty服务器,只要在浏览器中输入http://[IP]:8161/admin,不需要登录,就可以对队列、主题及消息等进行管理,这很不安全。那么要解决管理控制台的安全性,除了通过修改管理端口号以及应用名称之外,最关键的也是需要进行配置,必须通过身份认证才能登录。
(1)认证信息文件:realm.properties(${activemq.base}/conf/realm.properties)
Html代码 收藏代码
#admin/test
admin: MD5:098f6bcd4621d373cade4e832627b4f6,user,admin
(2)将jetty-plus-6.1.9.jar加入到${activemq.base}/lib/web中
(3)login.config(${activemq.base}/webapps/admin/login.config)
Xml代码 收藏代码
adminLoginModule {
org.mortbay.jetty.plus.jaas.spi.PropertyFileLoginModule required
debug="true"
file="${activemq.base}/conf/realm.properties";
};
(4)在activemq.xml中的jetty配置部分增加userRealms
Xml代码 收藏代码
(5)在${activemq.base}/webapps/admin/WEB-INF/web.xml文件里添加
Xml代码 收藏代码
(6)通过设置java.security.auth.login.config系统属性来配置login modules的配置文件。${activemq.base}/bin/activemq.bat中的ACTIVEMQ_OPTS增加参数
Java代码 收藏代码
-Djava.security.auth.login.config="D:/activemq-5.1/webapps/admin/login.config"
问题:使用时一直报个警告信息,还不知道如何解决
WARN log - No CallbackHandler configured: using DefaultCallbackHandler
三、ActiveMQ5.3.0中的配置(conf下有各种配置样例)
Xml代码 收藏代码
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">