Jenkins + GitLab web hook push events 403报错
百度了一番,说要关闭jenkins得CSRF跨站点,我找了下我的Jenkins(2.401.2)安全配置里并没有下图红框中的选项,最后按特定的版本搜索怎么关闭Jenkins 的CSRF解决了。
根据官网描述,Jenkins从2.204.6以删除禁用 CSRF 保护的功能。
解决方法:Tomcat 运行的Jenkins war,需在Tomcat启动脚本catalina.sh中加入配置即可;若是以jar包部署的,只需在启动时加上配置参数即可。
-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
我是yum 安装的jenkins ,找到jenkins.service
vi /usr/lib/systemd/system/jenkins.service
找到Environment="JAVA_OPTS=-Djava.awt.headless=true“ 在双引号里加上-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true,保存退出,重启systemctl restart jenkins
在登录jenkins
已经提示禁用此配置
最后再次测试GitLab push events,显示成功。
Jenkins2.4 高版本关闭跨站点保护 & hook push events 403报错
于 2023-08-07 10:33:59 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)