Jenkins インスタンスに対してリモート CLI を実行する権限を付与したい Jenkins ユーザーがいます。最初のコマンドは、config.xml をフェッチすることです。
java -jar jenkins-cli.jar -s http://jenkins:8080/hudson get-job thejob
ただし、コマンドを呼び出すと、次のように失敗します。
Caught: java.lang.RuntimeException: \
hudson.security.AccessDeniedException2: \
USER is missing the Job/ExtendedRead permission \
at hudson.security.ACL.checkPermission(ACL.java:54)
マトリックスベースのセキュリティ グリッドで、スクリプトの実行、ジョブの読み取り/作成/構成などの権限を付与しました。グリッドにまったく同じ権限を持つ別のユーザーがいますが、この別のユーザーの場合、すべてが正常に機能します。
プラグイン「拡張読み取り許可」または「読み取り専用構成」がインストールされていません。
この新しいユーザーが失敗する理由がわかりません。提案は誰ですか?
2 人のユーザーの config.xml ファイルの相違点:
<com.cloudbees.plugins.credentials.UserCredentialsProvider_-UserCredentialsProperty plugin="credentials@1.4">
<credentials/>
対:
<com.cloudbees.plugins.credentials.UserCredentialsProvider_-UserCredentialsProperty plugin="credentials@1.8.3">
<domainCredentialsMap class="hudson.util.CopyOnWriteMap$Hash"/>
最後に:
<hudson.security.HudsonPrivateSecurityRealm_-Details>
<passwordHash>some values...</passwordHash>
</hudson.security.HudsonPrivateSecurityRealm_-Details>