[rabbitmq-discuss] Federated queues with durable topic subscriptions over STOMP and ACLs

Nagy, Attila bra at fsn.hu
Fri Apr 18 11:34:56 BST 2014

On 04/18/14 12:03, Michael Klishin wrote:
> On 18 April 2014 at 13:57:41, Nagy, Attila (bra at fsn.hu) wrote:
> Please keep rabbitmq-discuss on CC.
Sorry, it seems my shift key is defunct.
>>> What I'm trying to ask (sorry if I can't describe it properly)
>> is:
>> wouldn't it work if the STOMP adapter would check the exchange's
>> type
>> when evaluating the subscription and if it's a topic and persistent
>> is
>> true, it would do the same:
>> bind a named queue to the exchange (here, a custom exchange, not
>> an
>> amq.*) with the routing key specified.
> Perhaps that could work but it may be too specific a use case to
> make STOMP plugin work like that. Plus it will take a while for
> a new version to come out (a few months).
I'm surprised this counts as too specific. This can be done 
programatically in AMQP by "manually" declaring and binding exchanged 
and queues, but can't be done via STOMP.
I agree that it can be complex to implement.
>> amq.topic
>> Which may solve my problem on the publisher side if I got it right,
>> but
>> what happens on the consumer side?
>> I think I still need to give configure rights to them onto amq.topic
>> to
>> make the binding.
> As far as I understand your problem only exists on the publisher side?
> Nothing changes for the consumer. If you need to have ACL for consumers, too,
> given you know queue names upfront you can use the features described on
> http://www.rabbitmq.com/access-control.html
No, the consumer side is also problematic. First of all, the queue name 
is generated, but that could be worked around by first checking what 
rabbitmq gives and then set the ACLs accordingly.
The problem here is the binding is always done to amq.topic, so I have 
to give more rights to the consumer that would otherwise needed (bind to 
the named exchange, or to amq.topic's given routing key, if ACLs could 
go into that property).

I guess it's easier for me now if I make this declarations and binds in 
the brokers, also, this makes it possible to properly ACL the consumers.

Thank you very much for your quick responses!

More information about the rabbitmq-discuss mailing list