Start by making provenance and attestation verification part of release gating, not an after-the-fact review. Then map every build identity, secret, and runner that can influence an artifact, and restrict those privileges to the smallest possible trust boundary. SLSA only works when the pipeline itself is governed as a security control surface.
Why This Matters for Security Teams
SLSA is not just a build hardening checklist. It is a supply chain integrity model for deciding whether an artifact can be trusted, traced, and safely promoted. In CI/CD, the practical risk is not only malicious code insertion, but also weak provenance, over-privileged runners, and signing keys or secrets that can be reused outside the intended build boundary. The NIST Cybersecurity Framework 2.0 is useful here because it treats software supply chain protection as part of broader governance, not a separate engineering concern.
Teams often get this wrong by focusing on tool names instead of control objectives. A mature SLSA implementation should answer who built the artifact, what inputs were used, whether the build environment was isolated, and whether the result was verified before release. That means provenance, attestation, and identity boundaries must be designed into the pipeline itself. In practice, many security teams encounter build tampering only after a signed artifact has already been promoted into production, rather than through intentional release gating.
How It Works in Practice
Implementing SLSA in CI/CD starts with treating each stage as a trust decision. Build systems need strong identity, short-lived credentials, and restricted network and filesystem access so that a compromise in one job does not become a compromise of the whole pipeline. Provenance should be generated automatically, attached to the artifact, and verified before deployment. For teams using GitHub Actions, GitLab CI, Jenkins, or cloud-native runners, the key control is not the platform itself but whether each runner, secret, and service account is scoped to a narrow and auditable purpose.
At a practical level, teams should align pipeline controls to four questions:
- Can the build be traced back to a specific source commit, builder, and configuration?
- Can release systems verify the attestation before promotion?
- Are secrets injected only when needed and revoked immediately after use?
- Is the build environment isolated enough to prevent dependency, cache, or script tampering?
That is where SLSA overlaps with identity governance. Build identities should be treated like Non-Human Identities, with the same discipline applied to rotation, authorization scope, and monitoring. Attestations are strongest when they are signed by a trusted builder and verified by policy in the deployment stage. For control mapping and supply chain assurance patterns, SLSA.dev remains the primary reference, while NIST Secure Software Development Framework helps teams connect pipeline hardening to broader secure development expectations.
Operationally, the highest-value controls are immutable build inputs, ephemeral credentials, isolated runners, and policy-based rejection of unsigned or unverified artifacts. These controls tend to break down when pipelines rely on shared runners with persistent credentials because compromise of one job can expose the secrets, cache layers, and signing path for many releases.
Common Variations and Edge Cases
Tighter pipeline controls often increase delivery friction, requiring organisations to balance release speed against assurance depth. That tradeoff is real, especially when legacy CI/CD jobs were built for convenience rather than trust boundaries. Best practice is evolving, and there is no universal standard for how much provenance detail every environment must enforce, but current guidance suggests the highest assurance should be reserved for production-facing artifacts and critical dependencies.
Edge cases usually appear in hybrid and high-change environments. Monorepos may produce many artifacts from one pipeline, which makes it harder to keep provenance accurate if the build graph is not explicit. Multi-tenant CI systems may need stronger segregation of runners, caches, and signing keys than single-team environments. Third-party build steps and reusable workflows can also complicate trust because the pipeline now depends on external code that may change independently of the application source. In those cases, CISA secure software development guidance is helpful for deciding which claims can actually be verified.
Where regulated delivery is involved, teams should also consider whether their release gates support audit evidence, segregation of duties, and incident response. The SLSA model is strongest when paired with policy enforcement, not only documentation. If an environment cannot support ephemeral builders, isolated signing, or attestation verification, the result is usually a partial implementation that looks compliant on paper but leaves the supply chain boundary porous.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
OWASP Non-Human Identity Top 10 and MITRE ATLAS address the attack and risk surface, while NIST CSF 2.0, NIST AI RMF and NIST AI 600-1 set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| NIST CSF 2.0 | PR.DS-6 | SLSA protects software integrity during build and release. |
| NIST AI RMF | AI RMF governance supports trusted software and model supply chains. | |
| OWASP Non-Human Identity Top 10 | Build identities and signing services should be governed as NHIs. | |
| NIST AI 600-1 | GenAI pipelines need provenance and validation before release. | |
| MITRE ATLAS | T1608 | Supply-chain tampering and dependency abuse are relevant attack paths. |
Define ownership, risk checks, and verification steps for each pipeline trust decision.
Related resources from NHI Mgmt Group
- How should teams implement code security controls in CI/CD pipelines?
- How should security teams implement SBOM signing in CI/CD pipelines?
- How should security teams implement software composition analysis in CI/CD pipelines?
- How should security teams implement API security testing in CI/CD pipelines?