怎么配置activemq屏蔽管理控制台

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么配置activemq屏蔽管理控制台相关的知识,希望对你有一定的参考价值。

参考技术A 日志信息, 表示在加载 Spring . 不表示 Spring 中就没有任何错误。 参考技术B activemq的web console是基于jetty实现,其权限管理也是基于jetty. 根据需求,可以给不同的用户赋予不同的权限。jetty的权限管理还算灵活,虽然配起来比较麻烦,可以分别设定某个角色(role)下的用户是否有对某个页面的访问权限。
下面简要介绍一下配置方法,只需要修改/conf 下的 jetty.xml, jetty-realm.properties
1. jetty-realm.properties
这里面配置了所有用户的用户名,密码和所属角色,按照如下格式:
username: password [,rolename ...]

2. jetty.xml
首先对每个角色配置一个Constraint 类,其中roles及对应 jetty-realm.properties中的rolename

<bean id="securityConstraint" class="org.eclipse.jetty.util.security.Constraint">
<property name="name" value="BASIC" />
<property name="roles" value="admin" />
<property name="authenticate" value="true" />
</bean>

然后配置securityConstraintMapping,
<bean id="securityConstraintMapping" class="org.eclipse.jetty.security.ConstraintMapping">
<property name="constraint" ref="securityConstraint" />
<property name="pathSpec" value="/admin/send.jsp/" />
</bean>
这表示securityConstraint类对应的角色可以访问/admin/send.jsp 页面。
可以使用/* 代表所有未单独配置的页面
假设我们需要新建一个只读用户,就可以配置两个角色admin和readonly,这两个角色都需要增加/*的ConstraintMapping 条目,然后在admin上额外配置所有涉及写操作的页面,包括/admin/deleteDestination.action/*, /admin/purgeDestination.action/* 等。

最后,在ConstraintSecurityHandler的constraintMappings属性里,把所有的ConstraintMapping都列出来。

<bean id="securityHandler" class="org.eclipse.jetty.security.ConstraintSecurityHandler">
<property name="constraintMappings">
<list>
<ref bean="securityConstraintMapping" />
</list>
</property>

这样,就实现了activemq web console用户的权限配置。

以上是关于怎么配置activemq屏蔽管理控制台的主要内容,如果未能解决你的问题,请参考以下文章

activeMQ消息中文乱码解决(控制台乱码及后台接收乱码)

ActiveMQ 常用配置简介

activemq与spring整合,tomcat启动,控制台报如下错误,activemq管理界面看不到消费者

ActiveMQ Part 5 : 认证与授权

配置文件

activeMq密码配置 - 6