Apache camel ”read=“test”write=“test”admin=“test”/

Apache camel ”read=“test”write=“test”admin=“test”/,apache-camel,activemq,Apache Camel,Activemq,您好,前面我们使用下面的authorizationEntry访问从队列开始的读/写队列。。 activemq.xml中的对应条目 <authorizationEntry queue="queue.>" read="test" write="test" admin="test" /> 根据clientExternal system的最新要求,是否有可能在不使用credentialsusername/password的情况下访问以queue..开头的队列 请告知我们必须在act

您好,前面我们使用下面的authorizationEntry访问从队列开始的读/写队列。。 activemq.xml中的对应条目

<authorizationEntry queue="queue.>"
 read="test" write="test" admin="test" />
根据clientExternal system的最新要求,是否有可能在不使用credentialsusername/password的情况下访问以queue..开头的队列 请告知我们必须在activemq.xml或配置中进行哪些更改才能实现相同的效果,即无凭据访问队列

这些队列用于使用apache camel、spring DSL语言创建的路由中,如文档中所述:


要允许匿名访问代理,请使用anonymousAccessAllowed 属性并将其设置为true,如上所示。现在,当客户 连接时未提供用户名和密码(默认用户名) “匿名”和“组匿名”将分配给其安全性 上下文您可以使用此用户名和密码来授权客户端的 访问适当的代理资源请参阅下一节。你可以 同时更改将分配给匿名用户的用户名和组 使用anonymousUser和anonymousGroup属性的用户。 src

所以我认为这可以解决问题

<simpleAuthenticationPlugin anonymousAccessAllowed="true">
  <users>
    <authenticationUser username="system" password="manager" groups="users,admins" />
    <authenticationUser username="user" password="password" groups="users" />
    <authenticationUser username="guest" password="password" groups="guests" />
    <authenticationUser username="test" password="test" groups="test" />
  </users>
</simpleAuthenticationPlugin>


<authorizationEntry queue="queue.>" read="test,anonymous" write="test,anonymous" admin="test,anonymous" />
如果使用咨询,则必须添加授权组以创建咨询主题:

<authorizationEntry topic="ActiveMQ.Advisory.>" read="anonymous" write="anonymous" admin="anonymous"/>

查看一下允许匿名访问代理,使用anonymousAccessAllowed属性并将其设置为true,如上所示。现在,当客户端在没有提供用户名和密码的情况下连接时,将为其安全上下文分配默认的用户名匿名和组匿名。您可以使用此用户名和密码授权客户端访问相应的代理资源,请参阅下一节。您还可以使用anonymousUser和anonymousGroup属性更改将分配给匿名用户的用户名和组。感谢@Hassen Bennour根据您的评论快速回复,我们可以在activeMq.xml中添加以下行,用户将能够访问队列而无需凭据。请确认。请为我提供一个相同的工作示例