詹金斯 - 块 "Execute shell"

Jenkins - Block "Execute shell"

我们将 Jenkins 用于各种工作,包括构建和测试,不同的开发人员只能访问其范围内的工作。

但是,当我们允许 Jenkins 用户 "Configure" 作业时,我们基本上允许他们 运行 shell(通过 "Execute shell" 步骤) 运行正在使用 Jenkins 二进制文件的用户的权限。这反过来又提供了理论上的能力来更改服务器上的内容并访问他们不应该访问的文件。

问题:我们如何控制它?

所以基本上,我正在寻找一种方法来禁用用户编辑特定构建(或全部)的现有 shell 字段的能力。

作为一个我没有亲自测试过的解决方法,你可以在全局设置中覆盖Jenkins使用的sh可执行文件,但是这样大家就不能使用"Execute Shell"了。

然后您可以让一些程序员为您允许的操作编写插件。

我们最终实现的解决方案是主从串联,主节点的执行者数量设置为0。