这似乎是一个显而易见的问题,但我看上去又高又低,找不到答案。情况如下:

  • 我正在公共(public)Internet上运行Jenkins持续集成服务器,与(受信任的)志愿者在Windows和Linux机器的混合物上运行从属服务器
  • 我们正在使用JNLP(Web start)doodad启动从属设备,以避免防火墙问题并设置/调试ssh
  • 使用基于矩阵的安全性
  • 设置服务器

    麻烦的是,我发现关于JNLP安全性如何工作的信息几乎为零。如果授予了任何匿名读取权限,那么世界上任何人都可以下载slave.jar并通过我服务器上的URL(易于猜测)访问jnlp文件,并以奴隶身份进行连接。

    我发现如果撤消所有匿名访问,则jnlp文件将被阻止,但slave.jar仍可访问。

    jnlp文件中似乎没有什么特别安全的东西,除了一个长十六进制数。此设置安全吗?还是我需要做其他事情吗?

    如果访问者无需登录就可以查看最新的版本,那就太好了,但是如果我授予匿名访问权限,则任何人都可以访问jnlp文件。

    最佳答案



    事实证明,这实际上是Jenkins中的关键安全漏洞:

    https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2013-01-04

    在回答我的问题时,最好的方法似乎是禁用所有匿名读取访问。

    关于security - 如何为Jenkins JNLP从站启用安全性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13832611/

    10-14 10:12