高版本 jenkins 报403 需关闭跨站请求伪造保护(CSRF)
根据官网描述,Jenkins版本自2.204.6以来的重大变更有:删除禁用 CSRF 保护的功能。 从较旧版本的 Jenkins 升级的实例将启用 CSRF 保护和设置默认的发行者,如果之前被禁用。
方案
老版本Jenkins的CSRF保护功能只需要在 系统管理 > 全局安全配置 中便可进行打开或者关闭。让人头疼的是较高版本的Jenkins竟然在管理页面关闭不了CSRF
在Jenkins启动前加入相关取消保护的参数配置后启动Jenkins,即可关闭CSRF,
配置内容如下:
-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
Jenkins若是跑在Tomcat下,只需在tomcat启动脚本catalina.sh中加入配置即可;若是以jar包形式部署的,只需在启动时加上配置参数即可。


验证是否关闭成功
如果在设置中-全局安全设置里面,如下图展示,则说明就关闭了CSRF

静坐常思己过,
闲谈莫论人非。
能受苦乃为志士,
肯吃亏不是痴人。
敬君子方显有德,
怕小人不算无能。
退一步天高地阔,
让三分心平气和。
欲进步需思退步,
若着手先虑放手。
如得意不宜重往,
凡做事应有余步。
事临头三思为妙,
怒上心忍让最高。
切勿贪意外之财,
知足者人心常乐。
若能以此去处事,
一生安乐任逍遥。

浙公网安备 33010602011771号