Jenkinsのユーザ情報をActive Directoryで制御していて、且つ、権限管理を「Role-Based Strategy」に設定した場合に、リモートビルドがうまくいかなくてハマったので残しておきます。
環境
- Jenkins : 2.150.1
- Role-Based Strategyプラグイン : 2.9.0
Jenkinsの管理設定
Active Directory管理
Role-Based Strategy設定
-
[Jenkinsの管理]→[プラグインの管理]の順に選択し、「Role-based Authorization Strategy」にチェックを入れてインストールします。
-
[Jenkinsの管理]→[グローバルセキュリティの設定]→[権限管理]の順に選択し、「Role-Based Strategy」にチェックを入れて保存します。
-
[Jenkinsの管理]→[Manage and Assign Roles]の順に選択します(Manage and Assign Rolesは、前の手順でRole-Based Strategyにチェックを入れてないと表示されません)
リモートビルドでエラー
この状態でリモートビルドを実行しようとするとエラーになります。
これは大文字のユーザ「Shingo_Kawahara」ではadmin権限があるが、リモートビルドからユーザ指定で実行しようとした場合、JenkinsユーザIDの小文字「shingo_kawahara」を使おうとして、権限を持っていない為です。(エラーメッセージ見ても分からない・・・)