How to control who can change the list and when ?

Modified on Wed, 15 Jan, 2020 at 11:34 AM

@Since 1.6.0


There are basically two main use cases related to controlling the permission to adjust the content, both are different so we will explain them one by one:



1) Who can mark the items as checked on the checklist?

i.e. perform any changes - including marking checklist items as checked, simply to modify the underlying custom field.


This is controlled by standard Polarion permissions. You can either just use Administration > Work Items > Readonly Fields or you can use field bases permissions Administration > User Management > Permissions Management to mark checklist custom field as read-only.


2) Who can define the checklist structure?

i.e. add/remove the items in the checklist.


This is a different use case, and the common goal is to link this permission with a workflow status. E.g. you can let the user change the "definition of done" checklist when the work item is in status Draft, but later, the list definition should be kept frozen.


To express that you can use Administration > Configuration Properties :


nextedy.checklist._TYPEID._FIELDID._STATUS.adminPermission


The possible values are:

  • @none
  • @all
  • or comma-separated list of user roles (including project roles)


For example, let's suppose you have two checklists: dor (Definition of Ready) and dod (Definition of Done). You can put following properties to Administration > Configuration Properties


# 'dod' checklist can be controlled by global admin and project_developer roles

nextedy.checklist.dod.adminPermission=admin,project_developer

# but when 'userstory' is in status 'verified' the checklist definition cannot be changed at all

nextedy.checklist.dod.verified.adminPermission=@none


# 'dor' checklist cannot be adjusted at all, unless see bellow

nextedy.checklist.userstory.dor.adminPermission=@none

# 'dor' checklist can be changed by anyone only when workitem is in status 'draft'

nextedy.checklist.userstory.dor.draft.adminPermission=@all




After that, you will be able to see that when userstory is not in status DRAFT, there is no  UI control to add new items or to delete or edit the items in Definition of Ready checklist, but the users will be still able to mark items as checked ... see bellow:


Order of evaluation

The system is  evaluating the adminPermission key in the following order (e.g. when evaluating type: userstory, checklist: dod, status: accepted)


  1. nextedy.checklist.userstory.dod.accepted.adminPermission
  2. nextedy.checklist.dod.accepted.adminPermission
  3. nextedy.checklist.userstory.dod.adminPermission
  4. nextedy.checklist.dod.adminPermission
  5. nextedy.checklist.userstory.accepted.adminPermission
  6. nextedy.checklist.accepted.adminPermission
  7. nextedy.checklist.userstory.adminPermission
  8. nextedy.checklist.adminPermission

       

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article