Thank you. It is working very well! Couple more questions: * Is it possible to combine different key types in one router? For example, have connections checked for USER_NAME or ROLE_NAME if user name is not found? * Documentation mentions that native router redirection works for specific clients. Do these clients need to be of a particular version, or is native redirection implemented using native protocol specification. E.g. any AMQP 0.9 client will work?
-- Vilius -----Original Message----- From: Domenico Francesco Bruscino <bruscin...@gmail.com> Sent: Thursday, April 17, 2025 4:25 PM To: users@activemq.apache.org Subject: Re: IP address whitelisting for Artemis users In my previous example there is an error, I meant: <connection-router name="allow-privileged-users"> <key-type>USER_NAME</key-type> <local-target-filter>^(foo|too)$</local-target-filter> </connection-router> <connection-router name="deny-privileged-users"> <key-type>USER_NAME</key-type> <local-target-filter>^(?!foo$|too$).*$</local-target-filter> </connection-router> <acceptor name="internal">tcp:// 10.0.0.1:61616?router=allow-privileged-users. <http://10.0.0.1:61616/?router=allow-privileged-users.>.. <acceptor name="external">tcp:// 0.0.0.0:61616?router=deny-privileged-users. <http://0.0.0.0:61616/?router=deny-privileged-users.>.. Domenico On Thu, 17 Apr 2025 at 15:24, Domenico Francesco Bruscino < bruscin...@gmail.com> wrote: > Yes, you can use a connection-router to allow only the connections > that match the local-target-filter, i.e. > > <connection-router name="allow-privileged-users"> > <key-type>USER_NAME</key-type> > <local-target-filter>^(foo|too)$</local-target-filter> > </connection-router> > > <connection-router name="deny-privileged-users"> > <key-type>SOURCE_IP</key-type> > <local-target-filter>^(?!foo$|too$).*$</local-target-filter> > </connection-router> > > <acceptor name="internal">tcp:// > 10.0.0.1:61616?router=allow-privileged-users... > > <acceptor name="external">tcp:// > 0.0.0.0:61616?router=deny-privileged-users... > > Domenico > > > > On Thu, 17 Apr 2025 at 13:55, Vilius Šumskas > <vilius.sums...@rivile.lt.invalid> wrote: > >> I'm trying to wrap my head around how connection router functionality >> works. >> >> In my case, I already have two acceptors. SSL protected and >> externally exposed one, which should be used only by the external >> unprivileged users, and internal one on different AMQP port, which >> should be used by the privileged internal users. If I understand >> correctly, that external acceptor should be configured in such a way, >> that it allow all users, except for few privileged ones. Since we are >> using ActiveMQBasicSecurityManager I probably cannot use security >> domain here, but looking through documentation, I should be able to >> use redirection on a specific acceptor with key-type USER_NAME, right? >> >> -- >> Vilius >> >> -----Original Message----- >> From: Domenico Francesco Bruscino <bruscin...@gmail.com> >> Sent: Wednesday, April 16, 2025 9:27 AM >> To: users@activemq.apache.org >> Subject: Re: IP address whitelisting for Artemis users >> >> Hi Villus, >> >> you can create an acceptor that allows only connections from specific >> users by setting a per-acceptor security domain[1] and a connection >> router[2] to reject connections with a source IP address that doesn't >> match your filter, i.e. >> >> <connection-router name="privileged-ip-filter"> >> <key-type>SOURCE_IP</key-type> >> >> >> <local-target-filter>^192\.168\.10\.1|192\.168\.10\.2$</local-target-filter> >> </connection-router> >> >> [1] >> >> https://activemq.apache.org/components/artemis/documentation/latest/s >> ecurity.html#per-acceptor-security-domains >> [2] >> >> https://activemq.apache.org/components/artemis/documentation/latest/c >> onnection-routers.html#connection-routers >> >> Regards, >> Domenico >> >> >> On Tue, 15 Apr 2025 at 22:24, Vilius Šumskas >> <vilius.sums...@rivile.lt.invalid> >> wrote: >> >> > Hi, >> > >> > is there a way to somehow limit which IP Artemis user is allowed to >> > connect from? We had instances where privileged user dedicated to >> > internal usage only was used in externalized Java services. I want >> > to protect these users from being used where they should not be. >> > >> > -- >> > Best Regards, >> > Vilius >> > >> > >> > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org For additional commands, e-mail: users-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact