You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Martin Ritchie <ri...@apache.org> on 2009/01/27 12:07:55 UTC

ACL publish denied outcome

Hi Carl,

Just running through some scenarios for the ACLs and just wondered how the
C++ broker handles a publish being denied by the acl?

The Java broker will currently drop the connection and report the error as
per AMQP. However, it may better to use the message return mechanism. Would
be good to have a common handling between the two brokers.

The scenario I had was a client that received data from an external source
and used a property of that data to determine the routing key for topic
publication. If the client is using say Mule and has a pool of connections
if a new topic is specified by the downstream source then dropping the
connections on publication will result in a performance impact to all of the
data being publish even thought it is authorised.


+-----------------+
| Broker          |
+-----------------+
 |(allow rk=ibm) |
 |               |(deny rk=apple)
 |               |  [Close connections]
+------------------+
| Connection Pool  |
+------------------+
| Mule Publisher   |
+------------------+
 |(ibm)          |(apple)
 |               |
+-------------+  |
| Data Source |  |
+-------------+  |
    +-------------+
    | Data Source |
    +-------------+

(Sorry for the Rich Text email, just wanted to be sure the ASCII art came
through)

Regards

Martin
--
Martin Ritchie

Re: ACL publish denied outcome

Posted by Martin Ritchie <ri...@apache.org>.
2009/1/27 Carl Trieloff <cc...@redhat.com>:
>
> yes, the C++ also throws the relevant exceptions, which will bring the
> connection down. However
> if you have a threaded connector for Mule, we can put them on multiple
> connections
> on the same socket, which will solve the issue of one tear down affection
> others.
>
> Carl.

I'm not quite following here how can you put the
exceptions/ConnectionCloses from multiple AMQP Connections on the same
socket?

Does the C++ broker not close the socket after the ConnectionClose is
sent with the error code? Or am I missing some particular 0-10
feature?


Cheers

Martin
> Martin Ritchie wrote:
>>
>> Hi Carl,
>>
>> Just running through some scenarios for the ACLs and just wondered how the
>> C++ broker ha ndles a publish being denied by the acl?
>>
>> The Java broker will currently drop the connection and report the error as
>> per AMQP. However, it may better to use the message return mechanism.
>> Would
>> be good to have a common handling between the two brokers.
>>
>> The scenario I had was a client that received data from an external source
>> and used a property of that data to determine the routing key for topic
>> publication. If the client is using say Mule and has a pool of connections
>> if a new topic is specified by the downstream source then dropping the
>> connections on publication will result in a performance impact to all of
>> the
>> data being publish even thought it is authorised.
>>
>>
>> +-----------------+
>> | Broker          |
>> +-----------------+
>>  |(allow rk=ibm) |
>>  |               |(deny rk=apple)
>>  |               |  [Close connections]
>> +------------------+
>> | Connection Pool  |
>> +------------------+
>> | Mule Publisher   |
>> +------------------+
>>  |(ibm)          |(apple)
>>  |               |
>> +-------------+  |
>> | Data Source |  |
>> +-------------+  |
>>    +-------------+
>>    | Data Source |
>>    +-------------+
>>
>> (Sorry for the Rich Text email, just wanted to be sure the ASCII art came
>> through)
>>
>> Regards
>>
>> Martin
>> --
>> Martin Ritchie
>>
>>
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:dev-subscribe@qpid.apache.org
>
>



-- 
Martin Ritchie

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: ACL publish denied outcome

Posted by Carl Trieloff <cc...@redhat.com>.
yes, the C++ also throws the relevant exceptions, which will bring the 
connection down. However
if you have a threaded connector for Mule, we can put them on multiple 
connections
on the same socket, which will solve the issue of one tear down 
affection others.

Carl.

Martin Ritchie wrote:
> Hi Carl,
>
> Just running through some scenarios for the ACLs and just wondered how the
> C++ broker ha ndles a publish being denied by the acl?
>
> The Java broker will currently drop the connection and report the error as
> per AMQP. However, it may better to use the message return mechanism. Would
> be good to have a common handling between the two brokers.
>
> The scenario I had was a client that received data from an external source
> and used a property of that data to determine the routing key for topic
> publication. If the client is using say Mule and has a pool of connections
> if a new topic is specified by the downstream source then dropping the
> connections on publication will result in a performance impact to all of the
> data being publish even thought it is authorised.
>
>
> +-----------------+
> | Broker          |
> +-----------------+
>  |(allow rk=ibm) |
>  |               |(deny rk=apple)
>  |               |  [Close connections]
> +------------------+
> | Connection Pool  |
> +------------------+
> | Mule Publisher   |
> +------------------+
>  |(ibm)          |(apple)
>  |               |
> +-------------+  |
> | Data Source |  |
> +-------------+  |
>     +-------------+
>     | Data Source |
>     +-------------+
>
> (Sorry for the Rich Text email, just wanted to be sure the ASCII art came
> through)
>
> Regards
>
> Martin
> --
> Martin Ritchie
>
>   


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org