本文へスキップ
MameTechNews
バックエンド

GitHub Actions、ワークフロー実行制限が一般提供 公開リポジトリは既定で制限

## POINTS

  • 公開リポジトリの`pull_request_target`は評価モードのあと、11月2日に既定で無効化される
  • デプロイとCIで規則を分け、秘密情報を扱うワークフローだけ起動できる主体を制限できる
  • 強制前にInsightsで落ちる実行を確認し、必要なトリガーだけを方針で明示許可する

GitHubは9月17日、GitHub Actionsのワークフロー実行保護をGitHub Enterprise・Organization・リポジトリ向けに一般提供した。アクター規則で起動できる主体を、イベント規則で起動できる契機を許可リスト化し、実行前に両方を評価する。

一般提供では、特定ワークフローファイルだけに規則を適用できる対象指定、EnterpriseからリポジトリまでのInsights、REST APIが加わった。デプロイ用deploy.ymlだけを特定チームに限定し、通常のCIは貢献者に開く、といった分割が可能になる。評価モードも継続し、強制前にブロック対象を確認できる。

公開リポジトリで該当するイベント方針がない場合、pull_request_targetを無効化する既定ルールが評価モードで入る。このトリガーはベースリポジトリの秘密情報を使えるため、フォーク由来のコード実行がパイプライン汚染や秘密情報持ち出しにつながる、いわゆるPwn Requestの温床になってきた。対象は公開リポジトリのみで、private/internalには適用されない。11月2日に強制が始まる。Insightsで影響を確認し、残すならイベント方針で明示許可するか、ファイル単位で例外を切る。