authorization - activemq 用户无权创建 : topic://ActiveMQ. Advisory.Connection

标签 authorization activemq

我正在尝试在 activemq 中使用授权,但卡住了一段时间。

这是我的java代码,当我删除授权插件时一切正常。我正在尝试创建一个名为“room2”的主题。

        Context jndiContext = new InitialContext();
        ConnectionFactory connectionFactory;
        connectionFactory = (ConnectionFactory) jndiContext
                .lookup("ConnectionFactory");
        connection = connectionFactory.createConnection("system", "manager");
        session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        Topic t = session.createTopic("room2");

这是我的 activemq.xml :

<plugins>
                <simpleAuthenticationPlugin>
                        <users>
                                <authenticationUser username="system" password="manager"
                                        groups="admins,publishers,consumers"/>
                                <authenticationUser username="user" password="password"
                                        groups="admins,users,publishers"/>
                                <authenticationUser username="guest" password="password" groups="guests"/>
                        </users>
                </simpleAuthenticationPlugin>
                 <authorizationPlugin>
                        <map>
                                <authorizationMap>
                                        <authorizationEntries>
                                                <authorizationEntry topic="room2" read="consumers" write="publishers" admin="admins" />
                                        </authorizationEntries>
                                </authorizationMap>
                        </map>
                </authorizationPlugin> 
        </plugins>

这是我收到的错误:

User system is not authorized to create: topic://ActiveMQ.Advisory.Connection

如果我使用<authorizationEntry topic=">" read="consumers" write="publishers" admin="admins" /> ,那么它就可以正常工作了,那么>到底是做什么用的呢?意思是?

最佳答案

您需要分配角色以允许创建咨询主题,除非您只是禁用它们。下面是该网站的一个示例。

<authorizationEntry topic="ActiveMQ.Advisory.>" read="guests,users" write="guests,users" admin="guests,users"/>

请参阅文档 here .

关于authorization - activemq 用户无权创建 : topic://ActiveMQ. Advisory.Connection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32093799/

相关文章:

asp.net-mvc - ASP.NET MVC 4 SPA 如何删除登录页面的重定向?

python - flask 和 python 是否存在类似 CanCan(授权库)的东西

jsp - 如何验证授权的表单提交

java - Camel、JAXB 到 ActiveMQ 自动创建 XML

java - 消息卡在 ActiveMQ 上

android - htc desire 上没有调用 onComplete 方法

.net - 为什么 .NET 会突然尝试序列化 ASP.NET 应用程序中的对象?

persistence - 嵌入式 ActiveMQ : jdbcPersistenceAdapter using kahaDB?

java - ActiveMQ,代理 URL : how to run on port number other than default 61616