テック技報最新号へ →
コード

GitHub Actions: pinact で uses: をコミット SHA に固定する

uses: actions/checkout@v4 のようなタグ指定は、タグを付け替えられると中身が変わる。セキュリティのためにはコミットハッシュで固定すべきで、pinact run を使えばワークフローを一括で書き換えられる。

@ftnext · 投稿 2026-03-22
#github-actions#security#ci-cd

手順

bash
pinact run       # .github/workflows/*.yml の uses: を SHA 固定に書き換え
pinact run -u    # 最新バージョンの SHA に更新

書き換え後のイメージ:

yaml
- uses: actions/checkout@<40桁のSHA> # v4.x.x
  • バージョンはコメントに残るので、人が読んでも分かる。
  • Renovate や Dependabot を使えば、SHA 固定のまま更新 PR を受け取れる。

注意点

  • SHA 固定は「中身が勝手に変わらない」だけで、元のアクションが安全かどうかは別問題。信頼できるアクションだけを使う。
  • 組織の設定で「SHA 固定を必須」にすることもできる(GitHub の Actions ポリシー)。

出典

X の元の投稿を開く