您的位置:首页 > 编程语言 > Java开发

JMS(Jboss Messaging)的一点使用心得(三)Spring扩展应用-Security

2007-11-24 20:07 621 查看
JMS Security
有些Topic和Queue需要相应的权限才能操作。
Topic和Queue的权限设定可以在</jboss-4.2.2.GA/server/messaging/deploy/jboss-messaging.sar/destinations-service.xml>中看到


<mbean code="org.jboss.jms.server.destination.TopicService"


name="jboss.messaging.destination:service=Topic,name=testTopic"


xmbean-dd="xmdesc/Topic-xmbean.xml">


<depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>


<depends>jboss.messaging:service=PostOffice</depends>


<attribute name="SecurityConfig">


<security>


<role name="guest" read="true" write="true"/>


<role name="publisher" read="true" write="true" create="false"/>


<role name="durpublisher" read="true" write="true" create="true"/>


</security>


</attribute>


</mbean>

如果没有设定security,则使用</jboss-4.2.2.GA/server/messaging/deploy/jboss-messaging.sar/messaging-service.xml>中默认的设定。


<attribute name="DefaultSecurityConfig">


<security>


<role name="guest" read="true" write="true" create="true"/>


</security>


</attribute>



如果想操作一个有Security的Queue或者Topic,可以使用Spring的UserCredentialsConnectionFactoryAdapter。在Spring中的设定如下:


<jee:jndi-lookup id="jmsConnectionFactory" lookup-on-startup="false" proxy-interface="javax.jms.ConnectionFactory"


jndi-name="ConnectionFactory">


<jee:environment>


java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory


java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces


java.naming.provider.url=localhost:1099


</jee:environment>


</jee:jndi-lookup>




<bean id="myConnectionFactory" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter"


lazy-init="true">


<property name="targetConnectionFactory" ref="jmsConnectionFactory" />


<property name="username" value="guest" />


<property name="password" value="guest" />


</bean>




<bean id="jmsTemplate" lazy-init="true" class="org.springframework.jms.core.JmsTemplate">


<property name="connectionFactory" ref="myConnectionFactory" />


<property name="defaultDestinationName" value="A" />


</bean>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐