Learning how to set properly project permissions for selected users in Jira is not simple for the first time. The most important part of the learning process is to understand the connection between user(-s) and project(-s). This connection in Jira is named Permission scheme that can be set indivudally for every project or for a group of projects. To show logically the process of setting permissions we will do it in some steps like below:
- Creating new user.
- Assigning user to a group.
- Creating project roles.
- Assigning user/group to a project role.
- First look into Project Permissions.
- Creating new permission scheme.
- Setting different scheme for the project
Creating new user
At first we need to create new user. In order to do this we need to click Create user in the Users panel.
Next we need to put some information like:
- Email address: email@example.com
- Full name: Jeff McDonald
- Username: jeft.mcdonald
- Password: anything
and finally we click Create user button.
Below we can see the result of newly created user. Jeff McDonald is visible on the list of users.
Assigning user to a group
During this step we need to assign user to the group. At first we can see that in Jira are available two groups:
The last group is important because every user assigned to this one is counted as a license user.
We will add new group jeffs-projects-group typing the name of the group in the Add group section and clicking Add group.
When we have added new group we can go back to the list of users and click on the Jeff McDonald user More -> Administer User.
This action will take us to the user edit window.
Now we click Manage groups button to load a window Manage user groups.
In this window we start typing jeffs-project-group and finally we click Join selected groups.
The result is presented below. We can see that user Jeff McDonald is now assigned to the group jeffs-projects-group.
Creating project roles
For now we have created user and we assigned the user to the role. During this step we will create project role. Project role is one of the possible ways to join user with project permissions. We will see later in this article what are all possible assignment beetween any user and project permissions.
Let’s go to Tools -> System in the main menu. This action will ask us to make higher permissions in the systems so we will need to type our administrator login and password again.
When everything is all right we should go to the System -> Project roles tab. Jira informs us that:
“You can use project roles to associate users and/or groups with specific projects. The table below shows all the project roles that are available in JIRA.”
I suppose that everything up to now is understandable.
We will add new Project Role typing Jeffs-Project-Role and press Add Project Role button.
You should see a view with a new project role added. From my experience it is very usefull to create project roles joined with the name of project leader or someone that manages some set of projects. It helps to administer projects when we want to add any user to the group of projects.
Assigning user/group to the project role
It is the moment that we are ready to see the mechanism of permission assignment to any user. Firstly we click on the project name to go into details.
In the main window we click Project settings. This option is available at the bottom left side of the project window.
In the Project settings window we go to Roles -> View project roles or just click User roles in the left menu.
Here we can simple add user or group of users to project role. In Add users to a role window we will select jeffs-project-group in the Users or groups field.
And in the Role field we will find Jeffs-Project-Role.
Below is the result of joining users group with project role.
First look into Project Permissions
In Jira systems permissions for the project and grouped into software schemes. As a default system has defined one software scheme named Default software scheme. To edit Project Permissions we need to go to Project -> Project settings -> Permissions -> Actions -> Edit permissions.
In edit mode of Project scheme we can edit any defined permission in the system. We can change for presentation a Browse Projects permission by clicking Edit in the correct row. We will see the window Grant permission.
In this window we can grant permission to:
- Project Role – for this case we created special project role named Jeffs-Project-Role
- Application access
- Group – we created jeffs-project-group
- Single user – we can assign for this permission any user available in the system
For now we have nearly all information to assign correct users, group of users or project roles to the project permissions. The only problem is we need to do this with the default permission scheme. What would happen if we did it ? There will be in the near future conflict with access to different project using one permission scheme.
We can imagine situation that one user assigned to two different user groups should have access two two different groups of projects. With such situation we need to have two different permisson schemes connected with two group of projects.
We will solve the problem creating new permission scheme.
Creating new permission scheme
Creating new permission scheme we start by selection Tools -> Issues from the main menu.
Next we click on Permission schemes in the left menu.
We should see the list of default permission schemes available in Jira system.
We can see that our Test Scrum Project is assigned to the Default software scheme. We click Copy in the row of the scheme and in the newly copied permission scheme (Copy of Default software scheme) we click Edit.
The only thing we need to change is the Name of the scheme and eventually the Description and we click Update.
When everything is well done we should see the new Jeff’s software scheme.
Now it’s high time to change default permission scheme to our project, but this will be the topic of the next section.
Setting different scheme for the project
In order to change permission scheme we need to go to Project Permission Scheme and click Actions -> Use a different scheme.
After that we can select Jeff’s software scheme from the list and assiociate permission scheme to project.
Finally we click Associate and that’s it.
Let’s edit Browse Project permission. We will assign for demonstration purpose Jeffs-Project-Role to the selected permission.
We can see that Browse Projects permission has granted new project role: Jeffs-Project-Role. We have one problem with Browse Projects permission. On the list is still granted access for Any logged in user. We will change this.
Let’s click Remove and in the Remove permission check only the position Application access – Any logged in user and click Remove.
This should help and we can see that now Browse Projects permission has assinged correct access to it.