Subscribe to the Non-Human & AI Identity Journal

When should organisations apply zero standing privilege to software delivery workflows?

As soon as a workflow can publish artifacts, change production-relevant configuration, or move code into a trusted environment. Those actions should not rely on long-lived permissions. Time-limited, task-scoped access reduces the chance that a stolen token or compromised agent can complete a release chain.

Why This Matters for Security Teams

zero standing privilege matters in software delivery because release systems often hold the shortest path from source code to production impact. Build runners, deployment bots, signing services, and orchestration hooks frequently carry broad permissions that outlive the task they were meant to perform. That creates a standing trust problem: compromise one token, service account, or agent and the attacker may inherit the ability to publish artifacts, alter pipelines, or modify runtime settings.

For security teams, the practical risk is not only unauthorized access but also trusted misuse. A compromised workflow can introduce tampered packages, redirect deployments, or mask changes inside an otherwise legitimate release process. Current guidance from OWASP Non-Human Identity Top 10 reinforces that non-human identities need the same discipline as human privileged accounts, including scoping, rotation, and lifecycle control. The control objective is simple: make privileged access temporary, attributable, and bounded to the exact job being executed.

In practice, many security teams encounter pipeline abuse only after a build credential has already been reused to push a malicious release, rather than through intentional privilege design.

How It Works in Practice

Applying zero standing privilege to delivery workflows means replacing persistent permissions with just-in-time access that is issued only when a specific build, test, release, or deployment step begins. Access should be narrow in scope, short in duration, and tied to the identity of the workload or agent performing the action. This is especially important where software delivery systems can reach package registries, infrastructure APIs, secrets stores, signing keys, or production control planes.

Operationally, the workflow should authenticate with a strong machine identity, request only the permissions needed for the current stage, and lose them when the stage ends. That includes separating duties between build, approval, and deploy steps, so one compromised component cannot complete the whole chain. Where possible, use ephemeral credentials, workload-bound tokens, and environment-specific trust policies. The CISA Secure Software Development Framework is a useful reference point for connecting release engineering with secure design, build integrity, and controlled deployment.

  • Issue access only at release time, not as a permanent pipeline entitlement.
  • Bind privileges to the exact repo, artifact, environment, and action.
  • Use separate identities for build, sign, approve, and deploy functions.
  • Log every privilege grant and correlate it with the workflow event that requested it.
  • Revoke or expire tokens automatically when the step completes or fails.

Where release integrity is high risk, teams should also protect signing keys, artifact repositories, and deployment controllers with stronger approval and attestation checks. The NIST Zero Trust Architecture model supports this approach by treating every access request as conditional rather than implicitly trusted. These controls tend to break down when legacy CI/CD platforms cannot issue short-lived machine credentials because static secrets and shared service accounts become the default workaround.

Common Variations and Edge Cases

Tighter privilege controls often increase pipeline complexity and operational overhead, so organisations need to balance release velocity against blast-radius reduction. That tradeoff becomes more visible in multi-cloud deployments, self-hosted runners, and release processes that depend on cross-account access or manual approvals. Best practice is evolving, but the direction of travel is clear: standing access should be the exception, not the normal state.

Some environments need partial exceptions. For example, a non-production sandbox may tolerate broader access than a production release path, provided it is isolated and monitored. Similarly, break-glass access may remain necessary for incident response, but it should be separate from routine delivery permissions and heavily audited. If workflows use autonomous agents or AI-assisted build steps, the privilege model should treat those agents as high-risk non-human identities with constrained tool access and explicit output validation. Guidance from OWASP CI/CD Security Cheat Sheet is useful here because it highlights where pipeline trust is commonly overextended.

There is no universal standard for this yet, but a practical rule is to apply zero standing privilege wherever a workflow can affect production state, release artifacts, or trust boundaries. If the action can change what customers run, the access should expire when the action ends.

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 OWASP Agentic AI Top 10 address the attack and risk surface, while NIST CSF 2.0, NIST Zero Trust (SP 800-207) and NIST AI RMF set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
NIST CSF 2.0 PR.AC-4 Least privilege is central to limiting workflow access to only what each release step needs.
OWASP Non-Human Identity Top 10 NHI-03 Delivery pipelines rely on non-human identities that need scoped, short-lived access.
NIST Zero Trust (SP 800-207) §3.2 Zero Trust requires each access request to be evaluated instead of implicitly trusted.
NIST AI RMF GOVERN AI-assisted delivery workflows need accountable governance over autonomous action and access.
OWASP Agentic AI Top 10 Agentic build or release steps need explicit tool permissions and output validation.

Constrain agents to task-scoped tools and validate their actions before production changes are accepted.