-
Bug
-
Resolution: Done
-
Major
-
JBoss A-MQ 6.0
-
None
When configuring the authorization plugin with a <tempDestinationAuthorizationEntry> that also set a groupClass, this groupClass is not properly applied to the TempDestinationAuthorizationEntry instance.E.g. consider this example config| <authorizationPlugin>|
| <map> |
| <authorizationMapgroupClass="org.apache.karaf.jaas.boot.principal.RolePrincipal"> |
| <authorizationEntries> |
| <authorizationEntryqueue=">" read="admin" write="client,admin" admin="client,admin" /> |
| <authorizationEntrytopic=">" read="client,admin" write="admin" admin="admin"/> |
| <authorizationEntrytopic="ActiveMQ.Advisory.>" read="admin,client" write="admin,client" admin="admin"/> |
| </authorizationEntries> |
| <tempDestinationAuthorizationEntry> |
| <tempDestinationAuthorizationEntryread="client,admin"write="client,admin"admin="client,admin"groupClass="org.apache.karaf.jaas.boot.principal.RolePrincipal"/> |
| </tempDestinationAuthorizationEntry> |
| </authorizationMap> |
| </map> |
| </authorizationPlugin> |
The groupClass attribute is set on the TempDestinationAuthorizationEntry instance but we don't apply the groupClass to the AuthorizationEntry by calling afterPropertiesSet();As a result, authorization fails when trying to create a temp destination.
This can happen when deploying the broker inside a Karaf container and have Karaf do the authentication (such as in JBoss A-MQ).
The groupClass is properly set on the authorizationEntries within the <authorizationEntries> list and only fails to be applied properly on the tempDestinationAuthorizationEntry.