jenkins 403 No valid crumb was included in the request 解决方案

一、在请求头加上 crumb

我现在要使用 webhook 发一个 post 请求给 jenkins,结果报了 403 错误。一个可行的解决方案就是给这个请求头加上 crumb。

  1. 在桌面右击空白处点击 git bash, 输入以下命令获取 crumb:curl -u user:password "http://192.168.150.188:8000/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,%22:%22,//crumb)" 上面的 user:password 需要替换成你的真实账号密码,http://192.168.150.188:8000 需要替换成你自己的 ip 地址。
  2. Jenkins-Crumb: 后面那一串符号复制下来,它就是要添加的 crumb。现在正确的命令如下:curl -H 726749d6a7473b87b93aa07dd9960b6d943ac3535e5d90a0ee49d370d2ee77fa http://192.168.150.188:8000/job/helloworld/build?token=11aa657155f7265c6b4051a18fe61d5e66。(我原先的命令是 curl http://192.168.150.188:8000/job/helloworld/build?token=11aa657155f7265c6b4051a18fe61d5e66,可想而知,这是错误的)。

二、取消 csrf 验证

取消 csrf 验证需要在启动参数设置,由于我的系统为 windows,所以只需要打开 jenkins 安装目录下的 jenkins.xml1 文件,找到 <arguments> 标签,在里面加上 -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true。这样就可以正常执行命令而不会报 403 错误了。

这行代码的作用是关闭 csrf 验证,不关的话,gitea 的 webhook 会一直报 403 错误,无法使用。

加好参数后,在该目录命令行下输入 jenkins.exe restart 重启 jenkins。
在这里插入图片描述

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值