I have a requirement to restrict access to issues based on the overlap of multiple groups
e.g. I might have a checkbox list
- Option A
- Option B
- Option C
- Option D
- Option E
If Options A, B & D are selected then only those users in the overlap (intersect) between Groups A, B & D can view the issue. IOW a user needs to be a member of all 3 groups in order to view the issue.
One way of achieving this is programmatically creating 2^n issue security levels where n might be 15 (ouch!) then setting the issue security levels in an update listener based on the selected checkbox option. There are so many things to dislike about this approach.
If 2 or more selected options is uncommon, the overlap between groups is small and group membership is relatively stable, another approach would be to create 15 issue security levels + 1 extra for when multiple options are selected. The 16th option could reference a multi user picker where every allowable user is selected based on the overlap. Again this could be done in an event listener. I'm not really happy with this approach either.
Is there a way to create a dynamic group provider that could be assigned to a security level?
Is there a way to deny access to different groups?