
跨站点请求伪造(CSRF或XSRF)是web应用程序中的一种安全漏洞。如果没有CSRF的保护,访问其他网站的Jenkins用户或管理员必威国际有限公司将允许该网站的操作员作为受害者在Jenkins中执行操作。
CSRF保护使用一个令牌(称为面包屑在Je必威国际有限公司nkins中),由Jenkins创建并发送给用户。任何表单提交或导致修改的类似操作,如触发构建或更改配置,都需要提供crumb。crumb包含标识创建它的用户的信息,因此使用另一个用户的令牌提交将被拒绝。所有这些都是在后台发生的,除非在一些罕见的情况下,例如,当用户的会话过期并再次登录时,否则不会有明显的影响。
本页的文档适用于Jenkins 2.222或更新版本。必威国际有限公司 |
在管理Jenki必威国际有限公司ns»配置全局安全性»CSRF保护,管理员可以配置CSRF保护。
的默认的碎屑发行人将下列信息编码到哈希用作碎屑:
为其生成crumb的用户名
生成crumb的web会话ID
日志含义生成crumb的用户IP地址
一个盐这个Jenkins实例所独有的必威国际有限公司
所有这些信息都需要匹配当碎屑发送回Jenkins时,以便被视为有效。必威国际有限公司
唯一支持的选项启用代理的兼容性从令牌中删除有关用户IP地址的信息。当Jenkins运行在反向代理之后,并且从Jen必威国际有限公司kins上看到的用户的IP地址会定期变化时,这是非常有用的。
插件可能会提供使用其他标准来确定一个面包屑是否有效的其他面包屑发行者。的严格的碎屑发行人提供更可自定义的可选crumb颁发者实现。
使用帖子
方法在Jenkins中受CSRF保护,通常需要提供碎屑。必威国际有限公司这也适用于脚本客户机使用用户名和密码进行身份验证.由于crumb包含web session ID,客户端需要做以下工作:
发送一个请求到/ crumbIssuer / api
端点,请求一个crumb。注意set - cookie
响应头。
对于所有后续请求,除用户名和密码外,还提供鼠鼠和会话cookie。
另外使用用户名和API令牌进行认证.请求使用API的令牌在詹金斯不受CSRF保护。必威国际有限公司
过时的向Jenkins发送HTTP请求的插件在启用CSRF保护时可能无法工作。必威国际有限公司在这种情况下,可能需要暂时禁用CSRF保护。
它是强烈推荐CSRF的保护措施启用,包括在私有的、完全信任的网络上操作的实例。 |
若要禁用CSRF保护,请设置系统属性hudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION
来真正的
在启动时。在Jenkins中了解更多关于系统属性的信息必威国际有限公司.