允许匿名用户只查看作业列表而不浏览Jenkins中的工作区

我们正在运行Jenkins CI。 一般我们想提供

  1. 完全访问来自特定组的已authentication用户
  2. 全读取访问匿名用户
  3. 阻止匿名用户访问某些项目(完全)

我们使用Unix用户/组数据库基于项目的matrix授权策略 。 点(1)和(2)运作良好,但是我们在实现(3)时遇到了问题。

我们试过了:

  • 全球安全移除所有的权利,匿名,然后授予基于项目的安全性,但之后,所有的匿名请求(甚至主Jenkins页面)产生login页面
  • 全球安全中增加以下权限的步骤:查看阅读(没有工作),工作发现(没有工作),工作阅读(没有工作),总体阅读 – 这最后一个似乎工作它给了匿名用户太多的权利,我们无法限制对特定项目的访问。

TL;博士

我们希望完全开放(阅读)jenkinsCI与几个项目完全隐藏/阻止匿名。

好的,所以我设法做到了这一点:

  • 你需要angular色战略插件
  • configuration全局安全性中启用此身份validation策略
  • 在“ pipe理和分配angular色 / pipe理angular色”中 ,为全局angular色和项目angular色创build匿名angular色并进行身份validation
  • 全球angular色授予匿名angular色权利只有整体 / 阅读 (这将至less访问匿名用户主jenkins屏幕导航和链接到login页面,而不是立即login提示)
  • 项目angular色添加匿名angular色与正则expression式模式,将匹配您想要匿名用户访问的项目,并添加此angular色后授予它正确的作业 / 阅读作业 / 发现
  • 导航到pipe理和分配angular色 / 分配angular色,并将匿名用户组分配给匿名angular色(并将用户authentication到特定组)。 保存