Jenkins CLI:错误:匿名缺少整体/读取权限

问题描述 投票:0回答:3

我坚持这个问题,我不知道解决它。

我编写了一个Shell脚本,它将通过传递我的私钥来使用Jenkins CLI调用我的作业.Jenkins版本是2.121.1

java -jar jenkins-cli.jar -s http://localhost:8080 -i ~/.ssh/id_rsa build RTT/RTT-CI-Tools/RTT-CI-Tools-Distribute -s -p SLAVE_REGEX=testserver

获取错误消息:

ERROR: anonymous is missing the Overall/Read permission

同一个脚本适用于另一个Jenkins(2.7.4)。如何解决这个问题。

jenkins command-line-interface ssh-keys jenkins-cli
3个回答
3
投票

请检查以下几点

1) USER exist on jenkins server as same on linux machine.

2) SSH Public key shared on Jenkins server is correct.(manage jenkins --> manage user --> click on ${USER} --> click on configure --> then check ssh public key is correct).

3) CMD i used(working) --> java -jar jenkins-cli.jar -ssh -user ${USER} -i ~/.ssh/id_rsa -s http://localhost:8080/jenkins/ build ${JOB_NAME}

请检查您是否正在从同一用户执行cmd。

4) SSH port should be enable on Jenkins (go to manage Jenkins--> configure Global security --> SSH Server... set SSHD Port Fixed eg 38844)


2
投票

最近这个问题也出现了(使用cli来自动安装jenkins)。我能够通过在jenkins的denyAnonymousReadAccess文件中将false标志设置为config.xml并重新启动jenkins来解决这个问题:

  <authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">  
    <denyAnonymousReadAccess>false</denyAnonymousReadAccess>  
  </authorizationStrategy>  

1
投票

您也可以使用auth param但是您应该在控制台中键入密码

java -jar jenkins-cli.jar -s http://localhost:8080/ -auth myLoggin:myPassword list-jobs
© www.soinside.com 2019 - 2024. All rights reserved.