There are many, many ticket tracking systems out there. Many are open source too. I've tried several, from the heavyweight bugzilla down to ... some things I wouldn't recommend. A number of the open source ticket trackers do a credible job. So, spending money may not be the best solution.
I would, recommend FlySpray. See: http://flyspray.rocks.cc for their home page. They are an open source ticket tracker. Pretty high quality package. Although I did not need the feature you require (protecting view of projects depending on rights of different users), I believe that feature is in Flyspray 0.98. They are, last I looked, in Beta cycle right now on the 0.99 release. I cannot vouch for 0.99. ... BTW, they are hosted at Dreamhost ...
The 0.98 release did the job I needed for a project I completed some months ago. I'd use it again.
All that said, I'm about to implement a site using Drupal as the base CMS. I've messed with the Project module and it too looks like it will do the job. A feature in Drupal's "taxonomy access control" module when used with the Project module makes this especially attractive in that not all projects are even visible to users unless those specific users have rights to see the project. ... Complex interaction among modules, poor documentation of the modules, but after experimenting and with a few leaps of inductive reasoning, it works for me.
of course, YMMV.