Project

General

Profile

Hide public projects for specific roles

Added by Miodrag Milic about 10 years ago

We have bunch of projects in the company and several of them of interest to all employees are public so that anybody can post an issue there.

Now, we want to allow external consultants to access projects they are part of and I don't want them to see any projects they are not part of, including public ones. They are all under role "External Consultants". Its very hard for us to switch all public projects to private since our Redmine procedures are already defined with such projects in existence.

So, is there plugin or patch that will allow me to put external consultants to their projects and hide from them internal public projects ? For instance, permission under projects for a role such as "View public projects" that would be on by default would be one solution that plugin might provide.

Is there any other method to do this ? I initially thought of having second Redmine instance for consultants but we don't want to maintain that scenario, and furthermore, we don't want to have projects on 2 places (syncing is possible but adds another level of complexity).


Replies (17)

RE: Hide public projects for specific roles - Added by Pablo Cocko about 8 years ago

Hi Miodrag,

Have you found any solution?

thanks

Miodrag Milic wrote:

We have bunch of projects in the company and several of them of interest to all employees are public so that anybody can post an issue there.

Now, we want to allow external consultants to access projects they are part of and I don't want them to see any projects they are not part of, including public ones. They are all under role "External Consultants". Its very hard for us to switch all public projects to private since our Redmine procedures are already defined with such projects in existence.

So, is there plugin or patch that will allow me to put external consultants to their projects and hide from them internal public projects ? For instance, permission under projects for a role such as "View public projects" that would be on by default would be one solution that plugin might provide.

Is there any other method to do this ? I initially thought of having second Redmine instance for consultants but we don't want to maintain that scenario, and furthermore, we don't want to have projects on 2 places (syncing is possible but adds another level of complexity).

RE: Hide public projects for specific roles - Added by Miodrag Milic about 8 years ago

No, I have turned to solution where I hide all projects. Then I have mother project that contains all other for entire IT and all projects that need to be seen by everyone actually reuse IT members. So they become sort of public for them and hidden by default for non-IT members (external consultants).

RE: Hide public projects for specific roles - Added by Pablo Cocko about 8 years ago

I've finally developed a patch which hide public projects using permissions.

Here attached the patch.

RE: Hide public projects for specific roles - Added by Fabio Peruzzo almost 8 years ago

Hi Pablo and Miodrag,
in my company we have simialr issue: I would like to set all the project as Public, to allow all R&D users to share the information, but my manager would to hide them to external users that collaborate with us. External user should see only his project, or projects where he is member, but not the other.
Roughly my idea is to set non-member group in order that they can see project existance but not navigate inside it; in this way external user can see only projects he collaborates.
I wouldn't to switch all project to private, cause it requires also a big effort during maintenance and that hides info to people.

I'm interested in your patch: sincerely I don't know how to install it. Could you explain it?

Thanks
Fabio

RE: Hide public projects for specific roles - Added by Fabrice ROBIN over 7 years ago

Hi,

Thank you for this patch. We had a similar issue to resolve.

We have also secured the direct access to project (via URL). You will find a revision patch attached.

Regards,
Fabrice

RE: Hide public projects for specific roles - Added by Fabrice ROBIN over 6 years ago

New revision for this patch for Redmine 3.4, plus minor improvements

RE: Hide public projects for specific roles - Added by Fabio Peruzzo about 6 years ago

Hi,
we have modified your patch adding some controls for restricted access to project also in case users have direct link. We started from 1.1 version of your patch but I cannot see big difference with your. At the end we also worked to resolve some problem due to progressive_projects_list plugin.

Now I have a question: do you think that is possible to apply same patch in order to hide the result of searching for a users that has no permission to enter in public projects?

RE: Hide public projects for specific roles - Added by Fabrice ROBIN about 6 years ago

Hi,

It is already done in the patch hide_projects_v1.4.diff
Look at the app/models/project.rb part.

Regards,
Fabrice

RE: Hide public projects for specific roles - Added by David Doležal over 4 years ago

Hi Fabrice,
this patch is great. I have question for you. Here is an example:

  • I have project POOL
  • I have user A, who is member only of project POOL with role User. Project POOL is public.
  • I have project STARGATE-1
  • I have user B, who is member of project POOL and project STARGATE-1 with role Adminstrator. Project STARGATE-1 is also public.

ex1) User A create issue n.1 in project POOL. User B accept issue n.1 for solving and change project from POOL to STARGATE-1.
OR
ex2) User B create issue n.2 in project STARGATE-1 and user A is marked as watcher for this issue.

Ad ex1) Without your patch user A can still read, write and is notified about changes on issue n.1 (depend on permissions for Non-member role).
Ad ex2) Without your patch user A is notified about issue n.2, can read, write (depend on permissions for Non-member role).
Ad ex1/2) With your patch user A is not notified and can nothing to do with issue n.1 or n.2 (the new permission is marked ON on role User). He can see only project POOL and all issues in project POOL.

I expect this:
User A as author or watcher of issue/s need to be notified, can find issue, read it and can write issue notes.

How does it solve? :-)

Thank you for your reply.

RE: Hide public projects for specific roles - Added by David Doležal over 4 years ago

David Doležal wrote:

Hi Fabrice,
this patch is great. I have question for you. Here is an example:

  • I have project POOL
  • I have user A, who is member only of project POOL with role User. Project POOL is public.
  • I have project STARGATE-1
  • I have user B, who is member of project POOL and project STARGATE-1 with role Adminstrator. Project STARGATE-1 is also public.

ex1) User A create issue n.1 in project POOL. User B accept issue n.1 for solving and change project from POOL to STARGATE-1.
OR
ex2) User B create issue n.2 in project STARGATE-1 and user A is marked as watcher for this issue.

Ad ex1) Without your patch user A can still read, write and is notified about changes on issue n.1 (depend on permissions for Non-member role).
Ad ex2) Without your patch user A is notified about issue n.2, can read, write (depend on permissions for Non-member role).
Ad ex1/2) With your patch user A is not notified and can nothing to do with issue n.1 or n.2 (the new permission is marked ON on role User). He can see only project POOL and all issues in project POOL.

I expect this:
User A as author or watcher of issue/s need to be notified, can find issue, read it and can write issue notes.

How does it solve? :-)

Thank you for your reply.

How I think about - what add second permission and edit parts for issues? Something like "Hide public project, but can work with own issues"

Then I can use you solution for my external users as you. And updated solution with new permission for others. At the end:
  • External work only with "External" project and issues in this project.
  • Other users work with projects, where are they members and issues in those projects + issues in other projects (they are non-members), where are they authors or watchers.

What do you think?

RE: Hide public projects for specific roles - Added by Fabio Peruzzo over 3 years ago

Hi,
anyoen of you is using this patch in Redmine 4.x?
I have sued on Redmine 3.2 and worked very well. Now we are migrating to 4.1 and patch doesn't work.
Do you have sugggestion? Do I need to modify the code?

Fabio

RE: Hide public projects for specific roles - Added by Fabio Peruzzo almost 3 years ago

Just for info, at the end I resolved the issue asking to developer to create a dedicated plugin replicating that function.

RE: Hide public projects for specific roles - Added by Miodrag Milic almost 3 years ago

Fabio Napoleoni Peruzzo

Is the plugin available publicly ?

RE: Hide public projects for specific roles - Added by Fabio Peruzzo almost 3 years ago

We paid for the plugin development. I don't know how to handle your request.

RE: Hide public projects for specific roles - Added by Alexander Bohn over 2 years ago

I just modified the patch so its working for redmine 4.1.1

    (1-17/17)