读书人

ActiveMQ5.5保险验证配置

发布时间: 2012-10-09 10:21:45 作者: rapoo

ActiveMQ5.5安全验证配置

ActiveMQ5.5安全配置分两种:控制台安全配置和JMS服务安全配置》(程序访问ActiveMQ时的安全设置)

1.控制台安全配置

?? 打开conf/jetty.xml文件,找到

<bean id="securityConstraint" value="BASIC" />
??????? <property name="roles" value="admin" />
??????? <property name="authenticate" value="false" />
?</bean>

将"false" 改为"true",重启ActiveMQ 即可。控制台的登录用户名密码保存在conf/credentials.properties文件中。

2.JMS服务安全配置

? 方法一:

?????? 在conf/activemq.xml文件中加上

a)<plugins>
??? <!--use JAAS to authenticate using the login.config file on the classpath to configure JAAS -->
??? <jaasAuthenticationPlugin configuration="activemq-domain" />
??? <!--? lets configure a destination based authorization mechanism -->
??? <authorizationPlugin>
??????? <map>
??????????? <authorizationMap>
??????????????? <authorizationEntries>

??????????????? <!-->表示通配符,例如USERS.>表示以USERS.开头的主题,>表示所有主题,read表示读的权限,write表示写的权限,admin表示角色组-->
??????????????????? <authorizationEntry queue=">" read="admins" write="admins" admin="admins" />
??? ??????????????? <authorizationEntry topic=">" read="admins" write="admins" admin="admins" />
??? ??????????????? <authorizationEntry queue="ActiveMQ.Advisory.>" read="admins" write="admins" admin="admins" />
??? ??????????????? <authorizationEntry topic="ActiveMQ.Advisory.>" read="admins" write="admins" admin="admins" />
??????????????? </authorizationEntries>
??????????? </authorizationMap>
??????? </map>
??? </authorizationPlugin>
</plugins>

b)在conf目录下增加login.config,groups.properties,users.properties

login.config 内容如下:

activemq-domain {
??????? org.apache.activemq.jaas.PropertiesLoginModule required
??????? debug=true
??????? org.apache.activemq.jaas.properties.user="users.properties"
??????? org.apache.activemq.jaas.properties.group="groups.properties";
??? };

groups.properties? 内容如下:

??? #group=userName
?? admins=system

users.properties? 内容如下:

?? #userName=password
?? system=manager

?

方法二:

???????? 在conf/activemq.xml文件中加入以下内容即可:

<plugins>

<!-- Configure authentication; Username, passwords and groups -->

<simpleAuthenticationPlugin>

<users>

??? <authenticationUser username="system" password="${activemq.password}"?? groups="users,admins"/>

??? <authenticationUser username="user" password="${guest.password}"? groups="users"/>

??? <authenticationUser username="guest" password="${guest.password}" groups="guests"/>

</users>

</simpleAuthenticationPlugin>

</plugins>

?

?此方法配置中的占位符的值可在conf/jetty-realm.properties 中设置

?

?

注意:按照官网资料http://activemq.apache.org/xml-reference.html??

【To avoid this XML validation error in ActiveMQ 5.4/5.5, simply change the ordering of the XML elements so that they are in alphabetical order。】此配置文件中是按英文字母顺序排列。所以<plugins><plugins/>必须放在<systemUsage>与<managementContext>之间

groups.propert? 文件定义了组下面的用户。

users.properties 文件定义了用户名对应的密码。

?

?

?

?

?

?

?

?

?

?

?

读书人网 >编程

热点推荐