一、介紹
Jira 在權限控制中,其實是在對應的項目中,權限的權限方案中去設置的,比如:編輯問題的時候,給相關人員的編輯權限。如圖:
那這樣就會有一個問題,就是我在流程節點的時候,如果我給某個用戶,或者報告人,或者某個組的話,就會導致,在流程節點的任何一個狀態都會有權限。
但是,我現在的需求是這樣的:
就是我給對應的用戶 有編輯權限,但是當他到達某個 流程節點的狀態之后,就沒有權限了,但是吶,你在流程狀態中 對於特定人或者特定的組需要有權限。
如圖:
二、添加編輯權限
其實這個很簡單,只需要在 你的項目的流程的權限方案中 添加編輯問題的權限,使用戶在流程節點的狀態中,有編輯權限:
三、流程節點問題狀態權限設置
3.1、先選擇要修改權限的狀態,然后點擊屬性,如下圖:
3.2、然后添加對應的屬性即可:如:jira.permission.edit.group jira-administrator
這樣的話,就可以了,需要注意的是,需要在無編輯權限的 區域的每一個問題狀態 必須都需要 添加屬性。
還有一個就是,如果 一個用戶既想在 有編輯權限區域有權限,又想 在無編輯權限有編輯權限要滿足兩個條件:
1. 需要在權限方案中添加 編輯問題 的權限
2. 此用戶 必須在 jira-administrator 你設置組中才可以。
四、流程節點其他權限的詳細介紹
其實剛剛的方式:屬性鍵的格式是這樣的:jira.permission.[subtasks.]{permission}.{type}[.suffix]
subtasks : 可選,如果想要把這個權限繼承到子任務中的話就寫上這個選項。
permission : JIRA對應的權限類的縮寫,下面是基於JIRA4.2的可用權限類縮寫列表,這個就不一一翻譯了,相信如果對JIRA有一定的了解都應該知道對應的權限是什么。
admin, use, sysadmin, project, browse, create, edit, scheduleissue, assign, assignable, attach(上傳附件), resolve, close, comment, delete, work, worklogdeleteall, worklogdeleteown, worklogeditall, worklogeditown, link, sharefilters, groupsubscriptions, move, setsecurity, pickusers, viewversioncontrol,attachdeleteall(刪除所有附件)
type : 允許/拒絕當前權限的用戶,可用的值有下面幾個。
group, user, assignee, reporter, lead, userCF, projectrole
suffix : 后綴,如果想要對兩個用戶組進行權限設置,可以通過后綴來區分。比如jira.permission.edit.group.1, jira.permission.edit.group.2
接下來在屬性值中填入對應的值,比如想給某個用戶組操作權限,屬性值里就填用戶組的名字,想給用戶設置權限就在屬性值中填用戶的名字。
下面是幾個具體的例子:
jira.permission.comment.group=some-group
你也通過直接寫權限類來控制整個權限的使用情況,比如jira.permission.comment=denied意味在當前狀態備注都是不可用的。
需要注意的是工作流中的權限是根據權限方案來起作用的,比如你在權限方案中只給jira-administrators這個用戶組設置了編輯權限,然后在工作流中設置jira.permission.edit.group=jira-users並不會給jira-users用戶組提供編輯權限。但是如果這兩個用戶組都在權限方案中設置了編輯權限,那么便只有jira-users會具有編輯權限。