Skip to content
Latchkey

ピン留めされたダイジェスト(Pinned Digest)とは?

pinned digestは、artifactを可変のtagではなく暗号的なコンテンツハッシュ(digest)で参照するもので、たとえばイメージを:latestではなくsha256:abc...で参照します。digestはコンテンツから導出されるため、参照はそのバイト単位で完全に一致するartifactにしか解決されません。digestによるpinは、version pinningの最も強力な形です。

なぜ重要か

tagは付け替えられ、セマンティックバージョンさえ再公開されえますが、digestはコンテンツを変えずに変わることはできないため、そこにpinすればサプライチェーンリスクの一群をまるごと取り除けます。GitHub Actions、ベースイメージ、依存関係は、どれもdigestでpinする方が安全です。ただしpinを更新するツールが必要になるという代償があります。

関連する概念

  • 可変のtagではなくハッシュでコンテンツを参照する
  • 依存関係pinningの最も強力な形
  • Dependabotのようなツールがpinned digestを更新する

関連ガイド