jira设置问题关闭之后不能继续编辑和添加备注

设置工作流中的Closed步骤的工作流属性值,增加两个:

jira.permission.comment.user:(空)

jira.issue.editable:false

Closed这个步骤之后,可添加备注的用户为空,可编辑属性为false。

参考文章:

https://confluence.atlassian.com/display/JIRA/Allow+editing+of+Closed+Issues

https://docs.atlassian.com/software/jira/docs/api/latest/com/atlassian/jira/security/WorkflowBasedPermissionManager.html

com.atlassian.jira.security

类WorkflowBasedPermissionManager

  • java.lang.Object继承
    • com.atlassian.jira.security.DefaultPermissionManager
      • com.atlassian.jira.security.WorkflowBasedPermissionManager
  • 所有已实现的接口:
    PermissionManager
    直接已知子类:
    ThreadLocalCachingPermissionManager


    公共类WorkflowBasedPermissionManager 
    扩展了DefaultPermissionManager
    权限管理器,允许在工作流XML描述符中为每个工作流步骤进一步限制工作流权限。例如,如果工作流包含一个步骤:
        
         1 
         acme-bizusers 
         qa 
         jira-developers 
         jira-editors 
         10001 
     
    然后只有acme-bizusers组和用户'qa'的成员才能评论公开问题,只有'jira-developers'和'jira-editors'组成员或项目角色成员id为'10001'将能够编辑问题。当然,假设这些用户已经在权限方案中拥有相关权限。

    元属性还可以修改子任务的权限。例如,如果'Bug'工作流程的Open步骤具有:

                  jira-qa 
     
    然后,当他们的父母处于开放状态时,'jira-qa'成员只能编辑Bugs的子任务。

    格式为'jira.permission。[subtasks。] {permission}。{type} [。suffix]',其中:

    • {permission}是指定的短名称 Permissions
    • {type}是授予或拒绝拒绝权限的权限类型(组,用户,受让人,记者,潜在客户,用户CF,项目)
    • 子任务。,如果指定,则表示该权限适用于此步骤中的问题子任务。

      重要说明:工作流权限只能限制 权限方案中设置的权限,而不能授予权限。

    也可以看看:
    WorkflowBasedPermissionSchemeManager
    • 构造函数摘要

      构造函数
      构造函数和描述
      WorkflowBasedPermissionManager(WorkflowPermissionFactory workflowPermissionFactory, PermissionContextFactory permissionContextFactory, ProjectPermissionTypesManager projectPermissionTypesManager,ProjectPermissionOverrideDescriptorCache projectPermissionOverrideDescriptorCache) 
    • 方法摘要

      所有方法实例方法具体方法
      修饰符和类型 方法和描述
      boolean hasPermission(int permissionsId, Issue issue, ApplicationUser user)
      检查此用户是否有权查看指定的问题。
      boolean hasPermission(int permissionsId, Project project, ApplicationUser user)
      检查指定的用户是否在指定项目的上下文中具有指定的权限。
      boolean hasPermission(int permissionsId, Project project, ApplicationUser user, boolean issueCreation)
      检查指定的用户是否在指定项目的上下文中具有指定的权限。
      boolean hasPermission(ProjectPermissionKey permissionsKey, Issue issue, ApplicationUser user)
      检查此用户是否有权查看指定的问题。
      boolean hasPermission(ProjectPermissionKey permissionKey, Issue issue, ApplicationUser user, com.opensymphony.workflow.loader.ActionDescriptor actionDescriptor)
      在给定的工作流转换生效后,检查此用户是否具有指定问题的给定权限。
      boolean hasPermission(ProjectPermissionKey permissionKey, Issue issue, ApplicationUser user, Status status)
      如果问题处于给定状态,请检查此用户是否具有指定问题的给定权限。
      boolean hasPermission(ProjectPermissionKey permissionsKey, Project project, ApplicationUser user)
      检查指定的用户是否在指定项目的上下文中具有指定的权限。
      boolean hasPermission(ProjectPermissionKey permissionsKey, Project project, ApplicationUser user, boolean issueCreation)
      检查指定的用户是否在指定项目的上下文中具有指定的权限。
      • 从类com.atlassian.jira.security继承的方法。DefaultPermissionManager

        flushCache, getAllGroups, getAllProjectPermissions, getArchivedProjectObjects, getArchivedProjects, getProjectObjects, getProjectPermission, getProjectPermissions, getProjects, getProjects, getProjects, getProjects, hasPermission, hasProjects, hasProjects,hasProjectWidePermission, isGlobalPermission, removeGroupPermissions, removeUserPermissions
      • 从类java.lang继承的方法。宾语

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • 从com.atlassian.jira.security接口继承的方法。PermissionManager

        hasPublicAccess
    • 构造函数详细信息

      • WorkflowBasedPermissionManager

        public WorkflowBasedPermissionManager(WorkflowPermissionFactory  workflowPermissionFactory,
                                               PermissionContextFactory  permissionContextFactory,
                                               ProjectPermissionTypesManager  projectPermissionTypesManager,
                                               ProjectPermissionOverrideDescriptorCache  projectPermissionOverrideDescriptorCache)
    • 方法细节

      • 调用hasPermission

        public boolean hasPermission(int permissionsId,
                                      Issue  issue,
                                      ApplicationUser  user)
        从界面复制的描述: PermissionManager
        检查此用户是否有权查看指定的问题。

        请注意,如果问题的通用值为null,则假定当前正在创建问题,因此权限检查调用将延迟到问题的项目对象,并将issueCreation标志设置为true。有关详细信息,请参阅JRA-14788。

        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsId  - 不是全球许可
        issue  - 问题(不能为空)
        user  - 用户对象,如果匿名访问JIRA,则可能为null
        返回:
        如果有足够权限访问所提供的实体,则为True
      • 调用hasPermission

        public boolean hasPermission(@Nonnull 
                                     ProjectPermissionKey  permissionsKey,
                                      @ Nonull 
                                     Issue  issue,
                                      ApplicationUser  user)
        从界面复制的描述: PermissionManager
        检查此用户是否有权查看指定的问题。

        请注意,如果问题的通用值为null,则假定当前正在创建问题,因此权限检查调用将延迟到问题的项目对象,并将issueCreation标志设置为true。有关详细信息,请参阅JRA-14788。

        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsKey  - 不是全局权限密钥
        issue  - 问题(不能为空)
        user  - 用户对象,如果匿名访问JIRA,则可能为null
        返回:
        如果有足够权限访问所提供的实体,则为True
      • 调用hasPermission

        public boolean hasPermission(@Nonnull 
                                     ProjectPermissionKey  permissionKey,
                                      @ Nonull 
                                     Issue  issue,
                                      @ Nullable 
                                     ApplicationUser  user,
                                      @ Nullable 
                                     com.opensymphony.workflow.loader.ActionDescriptor actionDescriptor)
        从界面复制的描述: PermissionManager
        在给定的工作流转换生效后,检查此用户是否具有指定问题的给定权限。
        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionKey  - 项目权限密钥。
        issue  - 问题(不能为空)
        user  - 用户对象,如果匿名访问JIRA,则可能为null
        actionDescriptor  - 表示当前的工作流程转换
        返回:
        如果有足够权限访问所提供的实体,则为True
      • 调用hasPermission

        public boolean hasPermission(@Nonnull 
                                     ProjectPermissionKey  permissionKey,
                                      @ Nonull 
                                     Issue  issue,
                                      @ Nullable 
                                     ApplicationUser  user,
                                      @ Nonull 
                                     Status  status)
        从界面复制的描述: PermissionManager
        如果问题处于给定状态,请检查此用户是否具有指定问题的给定权限。

        此方法在工作流转换期间非常有用,可以检查权限将处于新状态,或者(在“问题”对象中更新状态之后)以检查旧状态中的权限。

        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionKey  - 项目权限密钥。
        issue  - 问题(不能为空)
        user  - 用户对象,如果匿名访问JIRA,则可能为null
        status  - 表示我们正在检查权限的状态
        返回:
        如果有足够权限访问所提供的实体,则为True
      • 调用hasPermission

        public boolean hasPermission(int permissionsId,
                                      Project  project,
                                      ApplicationUser  user)
        从界面复制的描述: PermissionManager
        检查指定的用户是否在指定项目的上下文中具有指定的权限。
        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsId  - 非全局权限,即通过项目上下文授予的权限
        project  - 作为权限检查上下文的项目。
        user  - 执行权限检查的人员
        返回:
        如果用户在提供的项目的上下文中具有指定的权限,则为true
      • 调用hasPermission

        public boolean hasPermission(@Nonnull 
                                     ProjectPermissionKey  permissionsKey,
                                      @ Nonull 
                                     Project  project,
                                      @ Nullable 
                                     ApplicationUser  user)
        从界面复制的描述: PermissionManager
        检查指定的用户是否在指定项目的上下文中具有指定的权限。
        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsKey  - 非全局权限,即通过项目上下文授予的权限
        project  - 作为权限检查上下文的项目。
        user  - 执行权限检查的人员
        返回:
        如果用户在提供的项目的上下文中具有指定的权限,则为true
        也可以看看:
        PermissionManager.hasProjectWidePermission(ProjectPermissionKey, Project, ApplicationUser)
      • 调用hasPermission

        public boolean hasPermission(int permissionsId,
                                      Project  project,
                                      ApplicationUser  user,
                                     布尔问题创建)
        从界面复制的描述: PermissionManager
        检查指定的用户是否在指定项目的上下文中具有指定的权限。
        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsId  - 非全局权限,即通过项目上下文授予的权限
        project  - 作为权限检查上下文的项目。
        user  - 执行权限检查的人员
        issueCreation  - 在创建问题期间是否正在检查此权限
        返回:
        如果用户在提供的项目的上下文中具有指定的权限,则为true
      • 调用hasPermission

        public boolean hasPermission(@Nonnull 
                                     ProjectPermissionKey  permissionsKey,
                                      @ Nonull 
                                     Project  project,
                                      ApplicationUser  user,
                                     布尔问题创建)
        从界面复制的描述: PermissionManager
        检查指定的用户是否在指定项目的上下文中具有指定的权限。
        具体说明:
        hasPermission  在界面中  PermissionManager
        覆盖:
        hasPermission  在班上  DefaultPermissionManager
        参数:
        permissionsKey  - 非全局权限,即通过项目上下文授予的权限
        project  - 作为权限检查上下文的项目。
        user  - 执行权限检查的人员
        issueCreation  - 在创建问题期间是否正在检查此权限
        返回:
        如果用户在提供的项目的上下文中具有指定的权限,则为true

你可能感兴趣的:(jira设置问题关闭之后不能继续编辑和添加备注)