You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Tomas Soltys (JIRA)" <ji...@apache.org> on 2017/07/13 08:35:00 UTC

[jira] [Updated] (QPID-7857) [Java Broker] Invalid routing key

     [ https://issues.apache.org/jira/browse/QPID-7857?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tomas Soltys updated QPID-7857:
-------------------------------
    Attachment: 0001-QPID-7857-Return-routing-key.patch

In Message_1_0#getInitialRoutingAddress() return "to" address only if routing key or subject not found.

> [Java Broker] Invalid routing key
> ---------------------------------
>
>                 Key: QPID-7857
>                 URL: https://issues.apache.org/jira/browse/QPID-7857
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: qpid-java-broker-7.0.0
>         Environment: Java Broker - latest trunk
> Qpid JMS client - 0.11.1
>            Reporter: Tomas Vavricka
>              Labels: acl, routing-key
>             Fix For: qpid-java-broker-7.0.0
>
>         Attachments: 0001-QPID-7857-Return-routing-key.patch
>
>
> There is an issue with routing key when sending message to Java Broker. When ACL rule contains {{routingKey}} constraint Java Broker denies access.
> ACL rule:
> {noformat}
> ACL ALLOW-LOG FIXGW ACCESS VIRTUALHOST 
> ACL ALLOW-LOG FIXGW PUBLISH EXCHANGE name="request.FIXGW" routingKey="TradeReport*"
> {noformat}
> Client code snippet:
> {code:java}
> TextMessage message = session.createTextMessage("..."); 
> message.setJMSCorrelationID(UUID.randomUUID().toString()); 
> message.setJMSType("TradeReport");
> {code}
> Java Broker log:
> {noformat}
> ... 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.s.a.c.RuleSet) - Checking against rule: Rule[identity='ALL', action=AclAction[action=Action[operation=All, object=All, properties={}], firewallRule=null], permission=DENY_LOG] 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.s.a.c.RuleSet) - Action matches.  Result: DENY_LOG 
> 2017-07-11 15:55:31,003 INFO  [IO-/172.23.38.39:40030] (q.m.a.denied) - [con:2(FIXGW@/172.23.38.39:40030/default)/ch:1] ACL-1002 : Denied : Publish Exchange {ROUTING_KEY=request.FIXGW, NAME=request.FIXGW, VIRTUALHOST_NAME=default} 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.m.AbstractConfiguredObject) - authorise returned DENIED 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.p.frame) - SEND[/172.23.38.39:40030|1] : Detach{handle=0,closed=true,error=Error{condition=not-allowed,description=Permission ACTION(publish) is denied for : Exchange 'request.FIXGW' on VirtualHost 'default'}} 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.s.d.DerbyMessageStore) - REMOVE called on message: 3 
> 2017-07-11 15:55:31,003 DEBUG [IO-/172.23.38.39:40030] (o.a.q.s.p.v.f.FrameHandler) - RECV 0 bytes 
> ...
> {noformat}
> In log there is routing key same as name. But in client was routing key specified as TradeReport. 



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org