首页 > 解决方案 > 许可脚本安全插件在詹金斯中不起作用

问题描述

每次 Jenkins 中的非管理员用户在 Jenkins 中进行一些更改时,脚本更改都必须得到 Jenkins 管理员的批准。我正在寻找一种方法来禁用它,我找到了这个插件- https://wiki.jenkins.io/display/JENKINS/Permissive+Script+Security+Plugin

我已经安装并启用了该插件,如页面中所述,并且插件状态在此处<jenkins-url>/systemInfo也显示为已启用,并且 jenkins 进程也ps -efH | grep Jenkins显示了插件状态,但我的脚本更改(作为非管理员用户)仍然要求管理员批准。

这里有没有人使用过这个插件并且可以帮助我如何使用它?

标签: jenkins

解决方案


Permissive Script Security 插件仅适用于沙箱中的白名单代码,不适用于授权完整脚本。为脚本启用 Groovy 沙箱以自动批准,然后它应该可以工作。这在错误报告中的评论中已明确说明。

如果您的脚本是Job DSL脚本,那么应该启用 Groovy 沙箱并以特定用户身份运行作业。为此,可以使用Authorize Project 插件。只需添加一个默认的构建授权,它不是“匿名”用户,也不是特定项目的设置。Job DSL 插件仅在以特定用户身份运行作业时才支持沙盒。


推荐阅读