Jira使用笔记二 ScriptRunner 验证问题创建角色

背景

最近在对公司Jira工作流改造,收到这么一个要求:某些问题类型只有某些角色可以创建。本来是想通过Jira内建的权限控制来处理的。结果点到权限页面,心都凉透了。

好吧,那只能上脚本了。最终使用ScriptRunner的Simple scripted validator完成了需求。

java 复制代码
//查询指定用户在哪些项目中为管理员角色
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.security.roles.ProjectRoleManager
import com.atlassian.jira.project.ProjectManager
import com.atlassian.jira.project.Project
import com.atlassian.jira.security.roles.ProjectRole
import java.util.Collection;
import com.atlassian.jira.user.util.UserManager

ProjectManager projectManager = ComponentAccessor.getProjectManager()
ProjectRoleManager projectRoleManager = ComponentAccessor.getComponent(ProjectRoleManager)
UserManager  userManager = ComponentAccessor.getUserManager();
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
Project project = issue.getProjectObject();
 
Collection<ProjectRole> projectRoles = projectRoleManager.getProjectRoles(user, project)
for(ProjectRole role:projectRoles){
    log.warn(role.getName())
    if(role.getName() == "产品经理"){
        return true;
    }
}
return false;

配置图如下:

相关推荐
sbjdhjd4 小时前
智能体开始“动手”之后:OpenAI越权事件、Anthropic算力资本化与开放权重模型竞逐 | AI与SI行业日报整理(9月29日—10月6日)
大数据·人工智能·经验分享·笔记·ai·chatgpt·开源
上位机妹子5 小时前
从零理解 EF Core:用 Minimal API 给「工作项看板」建模(小白笔记)
笔记
深圳老胡5 小时前
STM32 MCU 国产替代型号简介
笔记·stm32·单片机·代码规范
做cv的小昊7 小时前
【大模型算法自学笔记01】NLP基础知识(1.1 自注意力)
人工智能·笔记·算法·自然语言处理·大模型·llm
深圳老胡7 小时前
STM32 在 VSCode 下 -O0 与 -Os 编译条件的区别
笔记·stm32·单片机·代码规范
陈卫军老师16 小时前
陈卫军语录全集总结:12句话,一条主线
经验分享·笔记
2501_9269783320 小时前
给自指系统接一个外部锚 —— 一个关于「用 AI 观察自己」的方法
人工智能·经验分享·笔记·机器学习·ai写作
AOI小白新手上路1 天前
anomalib 缺陷检测复现笔记:从跑通库到 EfficientAD 落地
人工智能·笔记·机器学习
xxwl5851 天前
RabbitMQ 学习笔记
笔记·学习·rabbitmq
加油努力有饭吃1 天前
DLMS/COSEM 蓝皮书解读(二十六):Auto connect(class_id = 29)—— 自动拨号与主动连接(出站管理)
笔记