jira-workflow-properties-featured
Author: Bogdan Gorka
Published: December 31, 2020
CategoryWorkflows

Advanced workflow properties in Jira are very useful every time you need to introduce some restrictions on certain statuses or workflow transitions of a workflow. In this article I have collected my favorite permission-based properties that I use most often in advanced Jira configurations.

Types of Jira workflow properties

You can utilize advanced workflow properties in the following scenarios:

Status workflow properties

  1. 1
    Permission based properties - when you want to restrict a user to perform some action only on a specific status. This article focuses on these properties

Transition workflow properties

  1. 1
    Change transition buttons order. 
  2. 2
    Hide resolution values when resolving issues

Both these properties were demonstrated in this article: Two must-have Jira workflow properties, to make your users happy

How to use permission-based workflow properties?

The format of workflow properties is

jira.permission.[subtasks.]{permission}.{user}.{suffix}

where:

jira.permission is a standard prefix

[subtasks.] if specified, indicates that the permission applies to the subtasks of issues in this step

{permission} is a short name specified in Permissions class (e.g. attach, resolve, close, delete, link, comment)

{user} is a description who will be affected by the permission property - user, group, assignee, reporter, lead, userCF, projectrole)

{suffix} is a number when you need to create the same property for more than one user/group/role

Important:

Workflow permissions are used only to locally restrict permissions that are set in the permission scheme. You can not grant permissions in this way.
For example, in your permission scheme, if you have the ‘Add comments’ permission granted to only one project role, let us say ‘Developers’, you cannot then add this permission to other roles like ‘Managers’ using workflow properties.

If the role ‘Managers’ is excluded on the permission scheme level, then adding them in the workflow property will not work.

How to add workflow properties on status?

jira-workflow-properties-01

To edit the status property, edit the workflow and:

  1. Select the status where you want to add some additional properties
  2. Click on properties link
jira-workflow-properties-02

To add the status property, edit the following fields:

  • Property key – a special series of property keys as described in examples below. It controls a particular type of permission and (optionally) a user or a group
  • Property Value – put the value if it exists in the property

Please note, that you cannot edit once added property. To change a property you need to delete it and add a new property again.

To delete a status property click on the link delete

jira-workflow-properties-03

How to check the global project role ID in your Jira instance?

Some workflow properties require the ID number of global project roles. Below I explain how to check this ID, so you can use it in the workflow permission property value.

Go to Jira Administration / System / Project roles and click on any of the actions

jira-workflow-properties-04

See the role ID in the address bar

jira-workflow-properties-05

Permission-based Workflow Properties

Below is the list of my favorite and tested permission based workflow properties. To illustrate in which situations they can be used, I included examples of use.

Workflow properties to disable selected permissions

Make issue read-only

Use case

I want to disable edit property in the Resolved status for all users including Administrators

Workflow properties

Property key: jira.issue.editable
Property value: false

Alternative solution

Property key: jira.permission.edit.denied
Property value: (leave empty)

Note

Add this property to the Resolved status or any other final status.

Use this property every time you want to make the issue on this status not editable. Comments and returning transitions will not be affected by this change

Disable worklog

Use case

I want to disable work log on Resolved and Closed statuses

Workflow properties

Property key: jira.permission.work.denied
Property value: (leave empty)

Note

Add this property to all statuses on Epics, where worklogs normally should not be added

Disable adding attachments

Use case

I want to disable adding new attachments in all statuses other then In Progress

Workflow properties

Property key: jira.permission.attach.denied
Property value: (leave empty)

Note

Add this property to all statuses on Epics, where worklogs normally should not be added.

Disable adding comments

Use case

I want to disable adding comments in the Resolved status so no change is added to resolved issues

Workflow properties

Property key: jira.permission.comment.denied
Property value: (leave empty)

Note

This property can be applied to any other status. Please note, that when disabled completely, comments will not be available on the transition screens either.

Workflow properties to restrict edit permissions to selected roles or groups

Restrict the Edit permission to project role Administrators only

Use case

I want to make issues in the Resolved status editable only to Administrators (or another single project role which I want to use)

Note

For this property to work, you need to check the role ID in project roles browser as explained above

Workflow properties

Property key: jira.permission.edit.projectrole
Property value: 10002

Please note that your Property value may be different because your role ID for Administrator role can be different in your Jira instance

Restrict the Edit permission to project roles Administrators and to Developers

Use case

I want to make issues in the Resolved status editable only to Administrators AND Developers.

In this case you need to configure properties for two roles so you need two workflow properties. Suffix 1 or 2 or 3….is used when you want the same property to be added two or more times.

Workflow properties

Property key (1): jira.permission.edit.projectrole.1
Property value: 10002
Property key (2): jira.permission.edit.projectrole.2
Property value: 10001

Note

Please note that your Property value may be different because your role ID for Administrator role can be different in your Jira instance.

Restrict the Edit permission to a user group

Use case

want to make issues in the In Progress status editable only to a Jira group named jira-project-managers in my Jira instance

Workflow properties

Property key: jira.permission.edit.group
Property value: jira-project-managers

Note

You can use groups from Jira directory or other directories. There are generally hyphens or underscore characters used in the group naming convention

Restrict the Edit permissions for sub-tasks

Use case

I want all sub-task to be editable only to a role Developers, when a Parent task Bug is in the In Progress status

Workflow properties

Property key: jira.permission.subtasks.edit.projectrole
Property value: 10102

Note

For this property to work, you need to check the role ID in project roles browser as explained above

Workflow properties to restrict adding comments to selected roles or groups

Restrict the Add comments permission to one project role

Use case

I want to enable adding comments in the Resolved status only to a Jira role named Administrators in my Jira instance

Note

For this property to work, you need to check the role ID in project roles browser as explained above

Workflow properties

Property key: jira.permission.comment.projectrole
Property value: 10002

Please note that your Property value may be different because your role ID for Administrator role can be different in your Jira instance

Restrict the Add comments permission to one user group

Use case

I want to enable adding comments in the In Progress status only to a Jira group named jira-developers in my Jira instance

Workflow properties

Property key: jira.permission.comment.group
Property value: jira-project-managers

Note

You can use groups from Jira directory or other directories. There are generally hyphens or underscore characters used in the group naming convention

Disable editing and commenting

Use case

I want to make sure that it is not possible to edit and comment closed issues (in status Closed) for anyone

Workflow properties

Property key (1): jira.issue.editable
Property value: false
Property key (2): jira.permission.comment.denied
Property value: (leave empty)

Workflow properties to restrict Assignee changes

Restrict changing Assignee

Use case

When a task is in Progress, I do not want anyone to change the Assignee. If someone needs to change the Assignee, they need to go back to the previous status

Workflow properties

Property key: jjira.permission.assign.denied
Property value: (leave empty)

Restrict changing Assignee only to one user role

Use case

When a task is in Progress, I want only users in role Administrator to be able to change the Assignee

Workflow properties

Property key: jira.permission.assign.projectrole
Property value: 10002

related articles

Sometimes when tasks are resolved or closed, you want to make sure

In this article I will show you two Jira workflow properties settings

When creating new workflows, it is easy to forget to set up


Spread the knowledge, share with others

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
Teach Yourself Jira Ebook Cover

Get free e-book

Teach Yourself Jira Administration

Join our ever growing group of Jira Administration enthusiasts and get this e-book for free.

Teach Yourself Jira Administration is my selection of best Jira Administration courses for Jira - over 30 hours of recordings.

In this e-book I selected only the few recommended courses with good and effective content for which you do not have to pay (if you follow my instructions).