Join our Newsletter — 33% off our NHI Course

How should organisations handle CI/CD security when they already have many workflows in production?

Use a migration path that preserves existing pipelines while shifting the control into the runner image. That lets teams keep delivery stable, avoid mass workflow rewrites, and steadily reduce dependence on per-file security steps as the image becomes the default enforcement layer.

Keeping CI/CD Security Stable While You Migrate

The practical problem is not whether to secure pipelines, it is how to do it without breaking a large installed base of workflows. A runner-image migration works because the enforcement point moves closer to execution, while existing workflow files continue to run. That makes the change incremental, reduces developer friction, and avoids turning security hardening into a one-time rewrite project.

For teams already operating at scale, the control boundary matters as much as the control itself. If security logic only lives in scattered workflow steps, coverage becomes uneven and drift is hard to spot. Shifting default enforcement into the image gives you a consistent baseline, while keeping workflow-local controls available for exceptions, edge cases, and temporary transition states.

A useful way to think about the migration is that you are changing where the default trust assumptions sit. The runner image becomes the standard place to enforce safer behaviour, such as pinned dependencies, tighter token handling, and reduced ambient capability, while workflows remain the compatibility layer. CI/CD Pipeline Identity Security Guide is a strong reference point for that shift because it frames the pipeline as an identity-and-authority problem, not just a scripting problem.

Why Runner-Image Enforcement Scales Better Than Per-Workflow Fixes

Per-file security steps look attractive when a team wants quick coverage, but they age poorly in production estates with many repositories and varied ownership. The more workflows you have, the more likely it is that some will miss an update, diverge from the standard, or reintroduce an old pattern during a hurried change. Centralising the default behaviour in the image reduces that operational variance.

This approach also gives you a cleaner way to phase controls. You can preserve old workflows, measure adoption, and then raise the baseline as confidence grows. That is often safer than forcing a simultaneous refactor across hundreds of pipelines, especially when release cadence is part of the business model. The main trade-off is that the runner image becomes a more critical dependency, so image build, update and rollback discipline need to be treated as part of the control, not as an afterthought.

Build integrity is a natural companion to this model, because a secure runner image is only helpful if teams can trust what went into it. SLSA is relevant here because it focuses attention on build provenance and artifact integrity, which are exactly the properties you want for a default enforcement layer.

What to Preserve, What to Standardise, and What to Retire

During migration, the goal is not to remove all workflow-local security logic on day one. Keep the existing pipelines running, but decide which checks must remain close to the job and which can move into the runner image as default behaviour. Good candidates for standardisation are controls that should be uniform everywhere, while exceptions should be rare and explicit.

Practitioners should treat the transition as a control consolidation exercise. The runner image should carry the baseline security posture, while workflow files should shrink over time to the smallest set of job-specific instructions. That makes reviews simpler, reduces duplicate logic, and lowers the chance that one repo quietly drifts out of policy while others are updated.

The migration should be paired with image governance: versioning, change control, and a clear deprecation path for older images. NIST SP 800-53 Rev 5 Security and Privacy Controls supports this kind of control discipline, especially where configuration management, access control and system integrity need to be consistent across many build environments.

Risk and Threat Considerations

The main risk in a delayed or poorly managed migration is control drift: some workflows keep old assumptions, some inherit the new baseline, and attackers look for the weakest path. CI/CD environments are attractive because one exposed secret, compromised action, or over-permissioned job can affect many repositories at once. A runner-image model lowers that variability, but only if the image itself is tightly governed and updated.

Failure mechanism: Security steps left in individual workflow files are easy to bypass, forget, or inconsistently apply, while a weak runner image can spread the same flaw across every pipeline that adopts it.

Impact: The organisation can end up with broad secret exposure, unreliable enforcement, and a single compromised build standard that affects multiple products or teams.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

SLSA and NIST SP 800-53 Rev 5 set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
SLSA Supply-chain Levels for Software Artifacts Runner images need build provenance and integrity to be trusted defaults.
Recommendation — Use SLSA to harden runner-image provenance and verify trusted build inputs.
NIST SP 800-53 Rev 5 CM-2 — Baseline Configuration A runner-image migration establishes a standard secure baseline across pipelines.
CM-3 — Configuration Change Control Migrating security into images requires controlled rollout and rollback of image changes.
SI-7 — Software, Firmware, and Information Integrity The answer depends on trusted pipeline enforcement rather than scattered workflow logic.
Recommendation — Define and maintain the secure runner image as the approved baseline configuration. Apply formal change control to runner-image updates before broad adoption. Verify integrity of the runner image and its security-enforcement components.

Practitioner Guidance

What to prioritise: Standardise the default enforcement in the runner image first, then identify the small set of workflows that genuinely need local exceptions. That sequence preserves delivery stability while steadily shrinking the number of places where security logic can drift.

What to verify: Confirm that the image is versioned, reproducible, and rolled out through a controlled change process, and that teams can still trace which pipelines are on which baseline. If you cannot answer that quickly, the migration is not yet operationally safe.

Common mistake: Treating the runner image as a one-off hardening task. In practice, it becomes part of the security control plane, so its update path, ownership, and rollback plan matter as much as the security checks it contains.

Practitioner takeaway: The right migration strategy is one that reduces the number of security decisions embedded in individual workflows without sacrificing release continuity, because consistency at scale is usually worth more than perfect control purity on day one.