Jenkins关闭跨站请求伪造保护(CSRF)保护

进入系统管理—全局安全配置—跨站请求伪造保护,查看Jenkins的默认配置


那我们如何关闭跨站请求伪造保护呢:

一、使用容器运行的Jenkins

方法一:
进入容器,找到/usr/local/bin/jenkins.sh,在该文件中的exec java -Duser.home="$JENKINS_HOME" ${FUTURE_OPTS} "${java_opts_array[@]}" -jar ${JENKINS_WAR} "${jenkins_opts_array[@]}" "$@"一行中,增加-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true

[root@localhost ~]# docker exec -ti jenkins-master /bin/bash
jenkins@b499fdb42624:/$
jenkins@b499fdb42624:/$ vi /usr/local/bin/jenkins.sh
#修改后内容如下:
......
exec java -Duser.home="$JENKINS_HOME" -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true ${FUTURE_OPTS} "${java_opts_array[@]}" -jar ${JENKINS_WAR} "${jenkins_opts_array[@]}" "$@"

配置完成后重启Jenkins容器。
方法二:直接在docker run中通过-e JAVA_OPTS="-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true"来关闭。

二、使用war包运行的Jenkins

直接在启动脚本里面添加-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true参数

export JENKINS_HOME=/mnt/jenkins_home
nohup java -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true -jar jenkins.war > /dev/null 2>&1 &

配置完成后,重新启动Jenkins。

再次查看配置,关闭成功后如下图所示:

https://issues.jenkins.io/browse/JENKINS-61375

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容