SLSA (Supply-chain Levels for Software Artifacts), pronounced “salsa”, is a security framework published by OpenSSF (originally proposed by Google in 2021, version 1.0 released April 2023) that defines progressively stronger requirements for build integrity and provenance — the verifiable record of where a software artifact came from, what source it was built from, how it was built, and what the build environment looked like. The motivating threat is supply chain attacks like SolarWinds (malicious code injected into the build system) and XZ Utils (malicious code injected into the source repository): in both cases the artifact that reached users was not what the source code claimed, and consumers had no way to verify the discrepancy. SLSA’s answer is a provenance attestation: a signed, machine-readable document produced by the build platform that records the source repository and commit, the build instructions, the builder’s identity, the build environment’s properties, and the digest of the resulting artifact. Signed provenance is the basis on which consumers can make automated trust decisions rather than relying on reputation or manual inspection.
SLSA is organised into tracks; the most commonly cited is the Build track, which in the latest published SLSA specification (v1.2) defines Build Levels 1–3 with progressively stronger guarantees. SLSA Build Level 1 requires that the build process be fully scripted (no manual steps) and that provenance be generated and available, but it does not require strong authenticity guarantees — its value is documentation and process hygiene, not tamper evidence. SLSA Build Level 2 requires provenance to be authenticated by the build platform (not the developer), produced automatically as a non-forgeable output of a hosted build service rather than a developer’s local environment; this prevents a developer from falsely claiming a package was built from a specific commit when it was not, but the build platform itself could still be compromised. SLSA Build Level 3 adds stronger protections around the build environment and provenance generation (isolation and hardening expectations for the build platform), making it the practical target for many production systems. Some earlier descriptions of SLSA mention “Build Level 4” requirements (two-person review, reproducible builds, dependency completeness); in current SLSA v1.x those are not part of the released Build-level requirements and are discussed as future work in the SLSA community.
SLSA provenance documents use the in-toto Attestation Framework (ITE-6) format: a JSON envelope with a statement (subject identifying the artifact by digest, predicateType identifying the predicate schema, and predicate containing the provenance details) wrapped in a DSSE (Dead Simple Signing Envelope) that carries the signature and the signer’s key identity. For OCI artifacts, provenance attestations are stored as OCI referrers alongside the image they describe, signed with Sigstore cosign, and discoverable via the referrers API — so a verifier that fetches a container image can also fetch and verify its SLSA provenance in a single registry interaction. Native SLSA provenance generation is built into GitHub Actions (via the slsa-framework/slsa-github-generator reusable workflow, which generates Level 3 provenance signed by GitHub’s OIDC identity), Google Cloud Build, and Tekton Chains. Kubernetes admission controllers and policy engines (Kyverno, OPA Gatekeeper, Sigstore Policy Controller) can enforce SLSA level requirements as deployment gates: a policy might require that all production images carry a valid Level 3 provenance attestation from a CI system in the organisation’s GitHub organisation, with the source repository and build workflow matching an allowlist. The combination of SBOM (what is in the artifact), VEX (which vulnerabilities in the SBOM are exploitable), and SLSA provenance (how and where the artifact was built) forms the complete supply chain metadata set that ORAS manages and OCI referrers distributes — collectively providing the evidence base for automated, policy-driven software supply chain governance at scale.
