Grzegorz Grzybek created ARTEMIS-5909:
-----------------------------------------
Summary: Security settings matches do not respect wildcard
configuration
Key: ARTEMIS-5909
URL: https://issues.apache.org/jira/browse/ARTEMIS-5909
Project: Artemis
Issue Type: Dependency upgrade
Reporter: Grzegorz Grzybek
According to [3. Customizing the
Syntax|https://artemis.apache.org/components/artemis/documentation/latest/wildcard-syntax.html#customizing-the-syntax],
we can change wildcard configuration in {{broker.xml}} which by default is:
{code:xml}
<wildcard-addresses>
<routing-enabled>true</routing-enabled>
<delimiter>.</delimiter>
<any-words>#</any-words>
<single-word>*</single-word>
</wildcard-addresses>
{code}
{{org.apache.activemq.artemis.core.settings.impl.HierarchicalObjectRepository.MatchComparator#MatchComparator}},
when checking the rules, uses:
{code:java}
this.quotedDelimiter =
Pattern.quote(wildcardConfiguration.getDelimiterString());
{code}
However,
{{org.apache.activemq.artemis.core.server.management.ArtemisRbacInvocationHandler#addressFrom()}}
always uses dots, even if it uses customized:
{code:java}
rbacPrefix =
SimpleString.of(activeMQServer.getConfiguration().getManagementRbacPrefix())
{code}
here's the ObjectName to address converted in
{{ArtemisRbacInvocationHandler#addressFrom()}}:
{code:java}
...
if (type != null) {
rbacAddress = rbacAddress.concat('.').concat(type);
}
if (component != null) {
rbacAddress = rbacAddress.concat('.').concat(component);
}
if (name != null) {
rbacAddress = rbacAddress.concat('.').concat(name);
}
if (methodName != null) {
rbacAddress = rbacAddress.concat('.').concat(methodName);
}
...
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]