SLSAレベルとは?
SLSAレベルは、Supply-chain Levels for Software Artifactsフレームワークにおける階層で、buildの完全性保証をランク付けします。より高いレベルは、開発者マシンではなく堅牢化・隔離されたビルダーによって生成されるプロヴェナンスといった、より強力な制御を要求します。これはチームにサプライチェーンの成熟度を測る共通のものさしを提供します。
なぜ重要か
目標とするSLSAレベルを明示することで、曖昧な「pipelineをセキュアにする」という目標が、署名済みプロヴェナンスや隔離されたビルドプラットフォームといった具体的な要件になります。より高いレベルに到達するには、通常buildを開発者のラップトップから、制御されたエフェメラルなrunnerへ移す必要があります。マネージドrunnerプラットフォームは、より高いレベルが要求する隔離された再現可能なビルド環境を提供することで、これを支援します。
各レベルが加えるものの概略
- 低いレベル: プロヴェナンスが存在し、利用可能である
- 中間のレベル: プロヴェナンスが署名され、改ざんが検知可能である
- 高いレベル: buildが堅牢化・隔離されたプラットフォーム上で実行される