我有一个主人和奴隶的Jenkins设置,我使用Role Strategy Plugin来管理我的用户的授权。我的目标是只允许特定用户在特定节点上构建。
我有一个 dev 全局角色,提供整体读取权限和作业读取权限,我有一个 dev 项目角色,它赋予了Jobs的所有权限(在dev文件夹中)和 dev 从属角色,它为代理(=从属)提供构建权限,其名称遵循模式 dev(。*)。总结一下:
当我将用户分配给三个角色时,用户可以在所有节点上构建作业,例如 dev01 和 prod01 。这是一个问题,因为我不希望我的开发用户在生产奴隶上构建。从用户中删除从属角色似乎具有类似的效果。
然后我尝试从项目角色中删除作业构建权限,但我的用户根本无法构建任何作业。
知道如何使用这个插件实现我的目标吗?我知道我可以使用像Job Restrictions Plugin这样的另一个插件,但我希望将配置保留在一个基于角色的策略中,因为它似乎支持这一点。
答案 0 :(得分:0)
角色策略插件不提供将某些项目限制为一组从属的功能。我们开发了一个内部插件来处理角色策略 - 如果Job Restrictions Plugin符合您的需求,那么就使用它。
另一个选项是Folder Plus插件,但它是商业CloudBees Jenkins解决方案的一部分。这样,您可以将作业文件夹限制为特定的从属文件。
根据您的设置,完全避免角色策略插件可能是明智之举,因为它在较大的环境中does not scale well。由专门的詹金斯大师分开团队可能在开始时看起来很尴尬,但是可以很好地扩展并有助于避免以后出现许多问题。