CSRF保护

跨站点请求伪造(CSRF或XSRF)是Web应用程序中的一种安全漏洞。没有CSRF的保护,Jenkins用户或管理员访问其他一些网站将必威国际有限公司允许该站点的运营商在Jenkins作为受害者中执行操作。

詹金斯的CSRF保护必威国际有限公司

CSRF保护使用令牌(调用在Je必威国际有限公司nkins)由Jenkins创建并发送给用户。导致修改的任何表单提交或类似的操作,如触发构建或更改配置,要求提供鼠面包。Crumb包含识别它创建的用户的信息,因此将拒绝与另一个用户令牌的提交。所有这些都发生在后台,除了在极少数情况下,没有明显的影响,例如,在用户会话过期后,他们再次登录。

此页面上的文档适用于Jenkins 2.222或更新。必威国际有限公司

配置CSRF保护

管理Jenki必威国际有限公司ns»配置全局安全»CSRF保护,管理员可以配置CSRF保护。

CSRF保护在配置全局安全性中

默认Crumb发行人编码以下信息哈希用作面包屑:

  • 生成鼠面包的用户名

  • 碎屑生成的Web会话ID

  • 用户的IP地址产生了碎屑的

  • 一种这个Jenkins实例是独一无必威国际有限公司二的

当将一个crumb发送回Jenkins时,所有这些信息都需要匹配,以认为该提交是有效的。必威国际有限公司

唯一支持的选择启用代理兼容性从令牌中删除有关用户IP地址的信息。当Jenkins在反向代理后面运行时,这很有用,必威国际有限公司并且从Jenkins看到的用户的IP地址定期更改。

在Jenkins 2.176.2和2.186中添加了Web会话I必威国际有限公司D,以导致碎屑到期。看安全咨询升级指南

插件可以提供使用其他标准的其他Crumb发行者来确定鼠饼是否有效。这严格的Crumb发行者提供更可自定义的替代Crumb发行者实现。

使用脚本客户端

请求发送使用邮政方法在Jenkins中受CSRF保护,通常需要提供碎屑。必威国际有限公司这也适用于脚本的客户端使用用户名和密码进行身份验证。由于Crumb包括Web会话ID,因此客户端需要执行以下操作:

  • 发送请求/ crubissuer / api端点,请求鼠面包。注意set-cookie.响应标题。

  • 对于所有后续请求,除了提供用户名和密码外,还提供crumb和会话cookie。

或者使用用户名和API令牌进行身份验证。请求与之认证API令牌免于詹金斯的CSRF保护。必威国际有限公司

禁用CSRF保护

向Jenkins发送HTTP请求的过时插件可能无法使用CSRF保护。必威国际有限公司在这种情况下,可能需要暂时禁用CSRF保护。

这是强力推荐留下了CSRF保护启用,包括在私人,完全可信网络上运行的实例。

要禁用CSRF保护,请设置系统属性hudson.security.csrf.globalcrumbissuerconfiguration.disable_csrf_protection.真的在启动时。了解有关Jenkins的系统属性的更多信息必威国际有限公司



此页面有用吗?

请通过此提交您关于此页面的反馈快速形式

或者,如果您不希望完成快速表单,您可以简单地指出,如果您觉得这个页面有帮助?


查看现有的反馈这里