訳あって苦手なWindows10環境です。Jenkins 2.249.1。msiインストーラでインストールした環境。サービス起動というかjenkins.warに対してのsystem propertyを追加設定。
- 設定ファイル
C:\Program Files\Jenkins\jenkins.xml - <arguments></arguments>に以下を追加
-Dhudson.model.DirectoryBrowserSupport.CSP=
-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
1つ目はContentsSecurityPolicyを空設定にしてるので、HTMLPublisherPluginの成果物ページ(作ってるシステムの申告状況一覧)でjavascript読み込み放題・動かし放題に。おそらく背景画像とはCSSとかもゆるくなってるはず(今のユースケースでは試してないのでわからない)。
2つ目で認証なし・TokenなしでRemoteAccessAPI経由でビルドしたり色々叩ける状態に。申告状況一覧から取り消しボタン経由でXMLHttpRequest使ってhttp POSTで削除JOBが走るように。
それにしてもいくらイントラ内といえどザル過ぎてこのまま運用は心配も。
JOB実行(申告操作)ステップ削減の操作性とセキュリティのバランス、ユーザー管理のバランスからストラテジー考えて運用しないとな、などと思ったのでした。
ちなみに2つ目はUpgrading to Jenkins LTS 2.222.xに非サポートオプションと書かれてていつ使えなくなってもおかしくないからいずれcrumbsで認証できるようにしないとだろうな。