SLSA Levels
Use the SLSA framework to measure and improve build integrity in graduated levels.
AdvancedSLSASupply ChainGovernance
Where it fits in the lifecycle
- Plan
- Code
- Build
- Test
- Release
- Deploy
- Operate
- Monitor
- Build Dependency scanning, image scanning, SBOM generation and signing.
- Release Approval controls, artefact promotion and provenance.
Overview
SLSA describes build integrity requirements as levels, from provenance existing at all through to hardened, isolated builds. It is useful as a roadmap and as shared vocabulary with auditors.
Why it matters
Supply chain hardening is open-ended. Levels give teams a concrete order of work and a way to state current maturity.
How it works
- 01Assess current build practices against the level requirements.
- 02Adopt provenance generation on a hosted build platform.
- 03Harden the builder: ephemeral, isolated, parameter-controlled.
- 04Enforce verification of provenance at consumption points.
Common tools
SLSA GitHub Generatorin-totoSigstore CosignGitHubGitLabSLSA
Implementation examples
yamlProvenance in GitHub Actions
permissions: id-token: write contents: read attestations: write jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - id: build run: make image - uses: actions/attest-build-provenance@v1 with: subject-name: ghcr.io/acme/app subject-digest: ${{ steps.build.outputs.digest }}Best practices
- Target one level at a time and verify enforcement before claiming it.
Common mistakes
- Claiming a level based on tooling installed rather than policy enforced.