[rt-users] prevent moving tickets to a queue, but still make the queue visible?

Emmanuel Lacour elacour at easter-eggs.com
Thu Jul 28 03:14:17 EDT 2016

Le 27/07/2016 à 22:09, David Parter a écrit :
> I have searched, and experimented, but have not found the answer.
> I want to prevent anyone except a specific group moving tickets to a
> particular queue, but I still want that queue and the tickets in the
> queue to be visible to other groups. Most of our queues should not be
> restricted.
> It seems that the permission that controls moving a ticket to a
> different queue is "modify tickets" which is based on the queue that the
> ticket is currently in, not the queue that the ticket is moving to.


> Is there a way to do that? Any advice or ideas would be appreciated.

the needed right is not easy to implement in RT because there is needed
parameter such as grant right "MoveTicket" on a queue with parameter
such as "from" or "to".

Thought you can prevent your users from doing this on the UI with two

Using lifecycles:

- create two lifecycles in your config, with same status/transitions if
needed, but different names, one for each queue. And *do not set a
mapping*  between those lifecycles. RT will refuse to move tickets
between the queues. But no one will be able to move them.

Using callbacks:

use callbacks such as

and in this callback, check if there is a queue change
($$ARGSRef{Queue}), and if so, get groups for $session{'CurrentUser'}
and if the user is not in the allowed group, push a message in @$results
and block update with $$skip_update = 1

you may have to do this in one or two other places such as
Search/Bulk.html and Ticket/ModifyAll.html I suppose.

More information about the rt-users mailing list