-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/6645/
-----------------------------------------------------------

(Updated Aug. 17, 2012, 3:12 p.m.)


Review request for qpid and Ted Ross.


Changes
-------

In the original version the only substitution allowed was '${user}' to 
represent 'user@domain'. 
This version expands the keyword set to three with '${user}', '${domain}', and 
'${userdomain}' to provide greater flexibility in declaring shared objects. 


Description
-------

Here's a cut at doing the username keyword substitution. A couple of discussion 
topics:

* The chosen substitution keyword string is ${user}.
* The keyword expands to a normalized userId. A userId like 
'[email protected]' is normalized to 'chuck_BIG_COMPANY_COM'. The rationale 
is to prevent characters in the userId from interfering with topic name parsing 
when the userId is expanded in a routing key.
* Only certain fields are allowed to have substitution:
  Any object name
  Alternate property names when used in CREATE QUEUE and CREATE EXCHANGE
  Routingkey property names when used in BIND EXCHANGE, UNBIND EXCHANGE, ACCESS 
EXCHANGE, and PUBLISH EXCHANGE
  Queuename property names when used in BIND EXCHANGE, UNBIND EXCHANGE, and 
ACCESS EXCHANGE
* Substitution is performed only if the Acl rule being matched has the keyword 
in the field being examined.


This addresses bug QPID-4230.
    https://issues.apache.org/jira/browse/QPID-4230


Diffs (updated)
-----

  trunk/qpid/cpp/src/qpid/acl/AclData.h 1374300 
  trunk/qpid/cpp/src/qpid/acl/AclData.cpp 1374300 
  trunk/qpid/cpp/src/qpid/acl/AclReader.cpp 1374300 
  trunk/qpid/cpp/src/qpid/broker/AclModule.h 1374300 
  trunk/qpid/cpp/src/tests/acl.py 1374300 

Diff: https://reviews.apache.org/r/6645/diff/


Testing
-------

This feature is generally exercised in file acl.py.


Thanks,

Chug Rolke

Reply via email to