As of SLSA v1.0, what do Build levels 1, 2 and 3 require, and how would you decide how far to push a large organisation up that ladder?
answer
- provenance exists, signed, unforgeable
- per artifact, not per organisation
- a level nobody verifies is a label
- integrity track, not a review track
- L3 costs you build-time flexibility
basics
~20 sSLSA v1.0's Build track defines three levels: L1 produces provenance, L2 signs it and has a hosted build platform generate it, L3 hardens that platform so build steps cannot forge provenance. Levels apply per artifact and pay nothing unless someone verifies.
solid answer
~50 sAs of SLSA v1.0 the specification defines a Build track with levels 1 to 3. **L1**: the build produces provenance describing how the artifact was made and distributes it — cheap, and it mostly forces builds off laptops into a scripted pipeline. **L2**: that provenance is signed and generated by a hosted build platform, so a consumer can authenticate who built the artifact rather than trusting the publisher's word. **L3**: the build platform itself is hardened — builds run in isolated environments and the signing material is unreachable from user-defined build steps, so a malicious build cannot forge provenance for anything. My rollout sequence is: get L1 everywhere by consolidating onto shared pipelines, take L2 for artifacts that reach production or customers, and reserve L3 for the few with real blast radius, because it means giving up arbitrary build-time control. And I would fund the verifier first — an unverified level is a label.
go deeper
Know that SLSA is a graded scheme about how trustworthy an artifact's build was, and that the first level simply means provenance is produced and published.
State the three Build levels accurately and what each adds: provenance exists, provenance is signed by a hosted platform, the platform is hardened so build steps cannot forge it.
Explain the operational consequences — L3 rules out mutable self-hosted workers and hand-patched releases, and no level pays off until a verifier fails closed on artifacts that miss policy.
Own the programme: classify artifacts by blast radius, tier the requirement rather than mandating uniformly, fund the enforcement point and exception path first, and be explicit that this is an integrity track that leaves source and dependency risk untouched.
## What the ladder says, as of SLSA v1.0 SLSA (Supply-chain Levels for Software Artifacts) v1.0 restructured the earlier draft into *tracks*. Only the **Build track** is specified at v1.0, with levels 1 to 3; the earlier v0.1 draft's level 4 was deferred rather than carried over, and source and dependency tracks were left for future work. Getting this right matters in an interview, because a candidate quoting "SLSA level 4" is quoting a draft that no longer defines it. - **Build L1 — provenance exists.** The build process produces a provenance document describing how the artifact was made, and makes it available to consumers. It defends against nothing adversarial by itself; its real value is forcing a repeatable, scripted build rather than a laptop and a shell history. - **Build L2 — signed provenance from a hosted build platform.** The provenance is authenticated and generated by a build service rather than asserted by the publisher. A consumer can now tell that an artifact came from that platform, which defeats the publisher who simply claims a build happened. - **Build L3 — hardened builds.** The platform runs builds in isolated environments and keeps provenance-signing material inaccessible to user-defined build steps, so one project's build cannot forge provenance for another and a compromised build step cannot lie about itself. This is the level at which provenance becomes evidence rather than testimony. Two properties of the model are easy to miss and change every decision below: levels apply **per artifact**, not per organisation — "we are L3" is a category error — and a level delivers value only when a **verifier** enforces it. An unverified attestation is a file. ## The decision framework **Start from the artifacts, not the levels.** Inventory what you actually ship and rank by blast radius: what runs in production, what customers install, what other teams build on top of. A ladder applied uniformly across every internal tool is expensive and mostly protects nothing. **Buy L1 with consolidation.** For most organisations the cheapest large win is that hand-built and laptop-built release artifacts stop existing. Moving every release onto a shared pipeline gets provenance as a by-product and eliminates the genuinely worst case — an artifact nobody can trace to a commit. **Spend on L2 where trust crosses a boundary.** Anything consumed outside the producing team benefits from an authenticated builder identity, because that is the point at which "trust the publisher" stops being sufficient. **Ration L3.** L3 requires a build platform whose signing identity your build steps cannot reach, which in practice means constrained, isolated, often ephemeral builds — and that conflicts directly with the flexibility teams like: privileged self-hosted workers with persistent state, interactive re-runs, hand-patched releases. Pay that cost for artifacts where forged provenance would be catastrophic, not across the estate. ## Where these programmes actually fail **No verifier.** Producing attestations is a pipeline change; refusing to deploy artifacts that fail policy is an organisational change that will, on the first day, block a legitimate release. Fund the enforcement point and its exception path before generating a single attestation, or you get compliance theatre. **Level confused with security.** SLSA is an *integrity* track. It says the artifact came from the build you think it did. It says nothing about whether the source was reviewed, the dependencies were vetted, or the code was any good. A perfectly L3 artifact can be built from a poisoned dependency — the provenance will faithfully record that. Presenting SLSA to leadership as "supply-chain security solved" sets up a predictable, credibility-destroying incident. **Ignoring the inputs.** Because the Build track constrains the build, teams under-invest in what goes *into* it — pinned inputs, protected pipeline definitions, credential-free handling of untrusted contributions. Those controls are cheaper than L3 and prevent attacks L3 does not address. **Uniform mandates.** A blanket "all repositories reach L3 by Q4" collides with real constraints and gets bypassed with exemptions that never expire. A tiered policy — every release artifact at L1, customer-facing artifacts at L2, a named short list at L3 — survives contact with the organisation. ## The answer to give "I would classify artifacts by blast radius, get L1 everywhere by consolidating builds, require L2 where trust crosses a team or customer boundary, and reserve L3 for a short list — and I would build the verifier and its exception path first, because a level nobody checks is a label. I would also be explicit with leadership that this is an integrity track, not a substitute for reviewing what goes into the build."
- Why is "our organisation is SLSA Level 3" a category error?Because levels are properties of individual artifacts and the build that produced them, not of a company. One repository's release may reach L3 while a neighbouring team still builds by hand. Organisation-wide claims also obscure the question that matters to a consumer: what level does *this* artifact I am about to run meet, and did anyone check?
- What does Build L3 defend against that L2 does not?Forgery from inside the build. At L2 the provenance is signed by the platform, but if a build step can reach the signing material it can mint provenance for arbitrary artifacts — including another project's. L3 requires isolation such that user-defined steps cannot access it, which turns provenance from a claim the build makes about itself into evidence the platform makes about the build.
- Where would you spend effort before climbing to L3 at all?On the inputs, because they are cheaper and address attacks SLSA's Build track does not. Pinning what the build executes, protecting pipeline definitions behind review, keeping untrusted contributions away from credentials, and enforcing verification at deployment all reduce real risk. L3 hardens the builder; those controls decide what the builder was told to do.
saying these in an interview costs you the question
- SLSA v1.0 defines four build levels
- A level is something an organisation holds, not an artifact
- Reaching L3 means the software is secure
- Generating attestations completes the programme
- SLSA validates that dependencies are safe