【发布时间】:2015-01-01 21:46:37
【问题描述】:
我正在尝试配置 JBoss EAP 6.3 JMS-Bridge 以在安全环境中工作。似乎根本不可能。
我的配置由两个(相等的)JBoss EAP 安装组成:称它们为提供者和消费者。 Provider 定义了一个队列,consumer 使用 netty 连接工厂将其连接到本地队列。如果使用
禁用双方的安全性,则配置工作正常<security-enabled>false</security-enabled>
一旦我激活安全性,消费者就无法构建桥梁。我通过指定在双方使用相同的安全域:
<security-domain>myDomain</security-domain>
我还尝试在桥接构建过程中指定用户名/密码组合:
<jms-bridge name="...">
<source>
<connection-factory name="RemoteConnectionFactory" />
<user>USERNAME</user>
<password>secret</password>
<destination>jms/topic/whatever</destination>
</source>
...
</jms-bridge>
如果我没有指定用户名/密码,则会观察到Jboss EAP 6.3: HQ119031: Unable to validate user: null 中描述的行为。如果我在 JMS-Bridge 的源配置中指定用户名,异常是相同的,但我看到指定的 USERNAME 而不是 null:
ERROR HQ122010: Failed to connect JMS Bridge: javax.jms.SecurityException: HQ119031: Unable to validate user: USERNAME]
at org.hornetq.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:399)
....
....
Caused by: HornetQException[errorType=SECURITY_EXCEPTION message=HQ119031: Unable to validate user: USERNAME]
安全域也被配置为与 EJB3 RMI 一起使用,并且 USERNAME 是一个有效的用户。
我错过了什么吗?禁用消息传递的安全性不是我们的选择。所以如果有任何解决方法,请帮助!
亲切的问候,
西蒙
【问题讨论】:
标签: security jboss jms jboss7.x