java.lang.Object | ||
↳ | com.atlassian.jira.security.DefaultPermissionManager | |
↳ | com.atlassian.jira.security.WorkflowBasedPermissionManager |
Known Direct Subclasses |
Permission manager which allows workflow permissions to be further restricted for each workflow step, in the workflow XML descriptor. For instance, if the workflow contains a step:
<step id="1" name="Open"> <meta name="jira.status.id">1</meta> <meta name="jira.permission.comment.group">acme-bizusers</meta> <meta name="jira.permission.comment.user">qa</meta> <meta name="jira.permission.edit.group.1">jira-developers</meta> <meta name="jira.permission.edit.group.2">jira-editors</meta> <meta name="jira.permission.edit.projectrole">10001</meta>then only members of the acme-bizusers group and user 'qa' will be able to comment on open issues, and only members of 'jira-developers' and 'jira-editors' groups or members of the project role with id '10001' will be able to edit issues. Assuming, of course, these users already have the relevant permission in the permission scheme.
Meta attributes can also modify subtasks' permissions. For example if the 'Bug' workflow's Open step has:
<meta name="jira.permission.subtasks.edit.group">jira-qa</meta>Then subtasks of Bugs will only be editable by 'jira-qa' members, when their parent is in the Open state.
The format is 'jira.permission.[subtasks.]{permission}.{type}[.suffix]', where:
Permissions
Important:Workflow permissions can only restrict permissions set in the permission scheme, not grant permissions.
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Checks to see if this user has the given permission to the specified issue after the given workflow transition takes effect.
| |||||||||||
Checks to see if this user has permission to see the specified issue.
| |||||||||||
Checks to see if this user has permission to see the specified issue.
| |||||||||||
Checks whether the specified user has a specified permission within the context of a specified project.
| |||||||||||
Checks whether the specified user has a specified permission within the context of a specified project.
| |||||||||||
Checks whether the specified user has a specified permission within the context of a specified project.
| |||||||||||
Checks whether the specified user has a specified permission within the context of a specified project.
| |||||||||||
Checks to see if this user has the given permission to the specified issue if the issue was in the given status.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
com.atlassian.jira.security.DefaultPermissionManager
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
com.atlassian.jira.security.PermissionManager
|
Checks to see if this user has the given permission to the specified issue after the given workflow transition takes effect.
permissionKey | The project permission key. |
---|---|
issue | The Issue (cannot be null) |
user | User object, possibly null if JIRA is accessed anonymously |
actionDescriptor | Represents the current workflow transition |
Checks to see if this user has permission to see the specified issue.
Note that if the issue's generic value is null, it is assumed that the issue is currently being created, and so the permission check call is deferred to the issue's project object, with the issueCreation flag set to true. See JRA-14788 for more info.
permissionsId | Not a global permission |
---|---|
issue | The Issue (cannot be null) |
user | User object, possibly null if JIRA is accessed anonymously |
Checks to see if this user has permission to see the specified issue.
Note that if the issue's generic value is null, it is assumed that the issue is currently being created, and so the permission check call is deferred to the issue's project object, with the issueCreation flag set to true. See JRA-14788 for more info.
permissionsKey | Not a global permission key |
---|---|
issue | The Issue (cannot be null) |
user | User object, possibly null if JIRA is accessed anonymously |
Checks whether the specified user has a specified permission within the context of a specified project.
permissionsId | A non-global permission, i.e. a permission that is granted via a project context |
---|---|
project | The project that is the context of the permission check. |
user | The person to perform the permission check for |
Checks whether the specified user has a specified permission within the context of a specified project.
permissionsKey | A non-global permission, i.e. a permission that is granted via a project context |
---|---|
project | The project that is the context of the permission check. |
user | The person to perform the permission check for |
issueCreation | Whether this permission is being checked during issue creation |
Checks whether the specified user has a specified permission within the context of a specified project.
permissionsKey | A non-global permission, i.e. a permission that is granted via a project context |
---|---|
project | The project that is the context of the permission check. |
user | The person to perform the permission check for |
Checks whether the specified user has a specified permission within the context of a specified project.
permissionsId | A non-global permission, i.e. a permission that is granted via a project context |
---|---|
project | The project that is the context of the permission check. |
user | The person to perform the permission check for |
issueCreation | Whether this permission is being checked during issue creation |
Checks to see if this user has the given permission to the specified issue if the issue was in the given status.
This method is useful during a workflow transition to check what the permissions will be in the new status, or (after the status is updated in the Issue object) to check what the permission would have been in the old status.
permissionKey | The project permission key. |
---|---|
issue | The Issue (cannot be null) |
user | User object, possibly null if JIRA is accessed anonymously |
status | Represents the state we are checking permissions against |