JENKINS身份验证失败

nnc*_*nnc 21 rest curl jenkins postman

尝试从任何REST客户端触发Jenkins作业时,我收到以下错误

Authentication required

     <!-- You are authenticated as: anonymous
Groups that you are in:

Permission you need to have (but didn't):
hudson.model.Hudson.Read
... which is implied by: hudson.security.Permission.GenericRead
... which is implied by: hudson.model.Hudson.Administer
-->
    </body> </html>
Run Code Online (Sandbox Code Playgroud)

从终端使用curl时会触发请求

我使用以下语法

http:// user:apiToken@jenkins.yourcompany.com/job/your_job/build?token = TOKEN [ref:https ://wiki.jenkins-ci.org/display/JENKINS/Authenticating+scripted+clients ]

即.curl -X POST http:// user:apiToken@jenkins.yourcompany.com/job/your_job/build?token = TOKEN

小智 10

选中"此构建已参数化",从下拉列表中选择凭证参数.用这个

curl -X POST http://jenkins.rtcamp.com/job/Snapbox/buildWithParameters --user "username:password"
Run Code Online (Sandbox Code Playgroud)

它解决了我的身份验证问题

我希望它也能帮助别人.


u.g*_*gen 6

我的开发团队的配置设置是matrix-based security这样我必须找到我的组并授予我的组工作区访问权限。

1.Click on Manage Jenkins .   
2.Click on Configure Global Security .  
3.in matrix-based security change: 

Overall - Read   
Job - Build  
Job - Read   
Job - Workspace  
Run Code Online (Sandbox Code Playgroud)

然后

    POST jobUrl/buildWithParameters HTTP/1.1
    Host: user:token
    Authorization: Basic dWdlbmxpazo4elhjdmJuTQ==
    Cache-Control: no-cache
    Content-Type: application/x-www-form-urlencoded

    Branch=develop
Run Code Online (Sandbox Code Playgroud)


gar*_*les 2

尝试使用 -u 参数指定凭据:

curl -u user:apiToken -X POST http://jenkins.yourcompany.com/job/your_job/build?token=TOKEN