To satisfy ISO 27001 A.8.25, write down the rules that govern how your team builds software, then apply them consistently across the whole life cycle: threat modelling and security requirements at design, secure coding standards during build, automated security gates in the pipeline (SAST, dependency and secret scanning), separate environments, code review, and a security sign-off before release. The action teams most often get flagged on is running the security gates without a documented rule that says they are required, so a passing pipeline exists but nothing states that a failing scan blocks a release.
A.8.25 is a Technological control in Annex A of ISO/IEC 27001:2022. It maps fully to SOC 2 CC8.1, so a team that already runs SOC 2 change management and development controls has most of the evidence an ISO 27001 auditor will ask for.
At a glance
- Theme: Technological (A.8)
- Source: ISO/IEC 27001:2022, Annex A
- New in 2022: No
- SOC 2 mapping: CC8.1 (Full)
- Part of: the ISO 27001 certification guide
What is ISO 27001 A.8.25?
ISO 27001 A.8.25, titled Secure development life cycle, requires an organization to establish and apply rules for the secure development of software and systems. The intent, as expressed in ISO/IEC 27001:2022, Annex A, is that security is built into every stage of how software is designed, written, tested, and released, rather than inspected in at the end or left to individual judgement.
A.8.25 is the umbrella control for secure development. It does not prescribe a methodology, a language, or a toolchain. What it expects is that the organization has defined how security applies from requirements through to release, and that development follows those rules in practice. A.8.25 sets the frame; the specific development controls operate inside it. Secure coding standards (A.8.28), security testing (A.8.29), and environment separation (A.8.31) are the parts; A.8.25 is the documented life cycle that ties them together and says when each applies.
How do you implement A.8.25?
Establish a written secure development life cycle, then wire its rules into how the team already builds and ships. Because A.8.25 governs the development process rather than any single host, the actions are the same whether the application runs in the cloud or on-prem. Run this sequence:
- Define secure development rules. Document the life cycle: what security activities happen at each stage, who owns them, and what blocks a release. This is the artifact A.8.25 asks for by name. It does not need to be long, but it needs to state the rules a developer and an auditor can both point to.
- Set security requirements and threat model early. Before code is written, capture the security and privacy requirements for the feature and identify how it could be attacked. Threat modelling at design is cheaper than finding the same flaw in production, and it produces a record that security was considered upstream.
- Apply secure coding standards. Adopt a coding standard for the languages and frameworks in use, so that common flaw classes (injection, broken access control, unsafe deserialization) are handled the same way by everyone. This is where A.8.28 secure coding operates inside the life cycle.
- Enforce security gates in the pipeline. Wire automated checks into CI so that every change is scanned before it can merge: static application security testing (SAST) for code flaws (for example, CodeQL or Semgrep), software composition analysis (SCA) for vulnerable dependencies (such as Dependabot or Snyk), and secret detection to catch credentials committed to the repository. The rule that matters is that a failing gate blocks the merge; a scan that merely runs enforces nothing.
- Separate development, test, and production environments. Build and test changes somewhere other than production, so an unreviewed change cannot reach live data or customers. This is A.8.31 operating as part of the life cycle.
- Require code review. A second person reviews each change before it merges. On a pipeline this is a required pull request approval; the reviewer and the author are not the same person.
- Require a security sign-off before release. A defined approval gate confirms that the security activities ran and passed before a change ships. The passing gates, the review, and the approval together are the release record.
Key insight
A failing security gate has to block the merge
A pipeline that runs SAST, dependency scanning, and secret detection satisfies A.8.25 only when a documented rule states that a failing scan stops a release. Scans that run but never block produce activity rather than a control.
CI/CD pipelines make most of these actions mechanical: branch protection blocks a merge until required status checks (SAST, SCA, secret detection) pass and a second reviewer approves, and the deploy log records what shipped. The tooling is a design decision rather than a fixed requirement. A team evaluating pipeline security is choosing between stitched-together open-source tools, source-control-native scanning, and an all-in-one platform, and the right fit depends on team size and developer capacity rather than on which product has the longest feature list. Weighing structural choices like these is the kind of work a security architecture review covers. Legacy applications complicate the gates: when a codebase runs an older framework version that commercial SAST vendors no longer support, the answer is a lightweight scanner with rules for that framework rather than a framework migration that has nothing to do with security. A.8.25 asks that the gates exist and run consistently; it does not require any particular vendor.
What evidence demonstrates A.8.25?
Auditors evaluating A.8.25 look for the documented secure development life cycle and evidence that development followed it across the audit period. Most of these artifacts can come straight out of the pipeline; treating evidence collection as an engineering problem is the core of GRC engineering.
| Artifact | What it demonstrates | Cadence |
| Secure development policy / SDLC standard | Documented rules govern how software is built and released | Reviewed at least annually |
| CI security-gate results (SAST, SCA, secret detection) | Security checks run on changes and block failing merges | Per change / continuous |
| Code review records (pull request approvals) | Changes are reviewed by a second person before merge | Per change |
| Threat models / security requirements | Security was considered at design rather than only at release | Per significant feature |
| Release sign-offs | A security approval gate ran before each release | Per release |
Watch out
A common A.8.25 gap: the security gate that no rule requires
A gap that comes up during readiness work is a pipeline that runs security scans with nothing written down that says it has to.
In one engagement, a SaaS team running an older application framework had been blocked from adding static analysis at all, because every commercial SAST tool they evaluated supported only the newer framework versions, and they were preparing to stand up a heavyweight self-hosted platform on a server they did not yet have. An open-source scanner with rules specific to their framework version removed the blocker: it ran in their existing pipeline and could update its rules without opening a new network channel.
The scanning was the easy part. The evidence gap was that once the scan ran, no secure development rule stated that a failing scan blocked a release, so the control worked in practice but produced nothing an auditor could sample. Writing the life cycle rule down, naming the gates as required, turned a working pipeline into demonstrable evidence.
Turn your pipeline into audit evidence
Truvo designs secure development life cycles that produce the evidence auditors sample, as part of an effective security program.
How does A.8.25 map to SOC 2?
| SOC 2 criteria | Overlap type | Evidence reusable in both directions |
| CC8.1 (Change management) | Full | Secure development policy, CI security-gate results (SAST/SCA/secret detection), pull request reviews, test-environment separation, release approvals |
A.8.25 maps fully to SOC 2 CC8.1, the change management criterion that covers authorizing, developing, testing, approving, and implementing changes. A team with CC8.1 in place has already built the secure development life cycle A.8.25 asks for, and the same policy, pipeline scan results, reviews, and release approvals go into both audit packages. The SOC 2 to ISO 27001 control mapping covers the full crosswalk and what transfers between the two frameworks.
Related controls
A.8.25 is the life cycle umbrella; the controls around it are the specific activities that run inside it. A.8.28 (secure coding) sets the coding standards the build stage applies, and A.8.29 (security testing in development and acceptance) governs the testing gates the pipeline enforces. A.8.31 (separation of development, test and production environments) gives the life cycle the non-production environments it builds and tests in, and A.8.32 (change management) governs how an approved change moves to production. A.8.4 (access to source code) controls who can read and change the code the life cycle protects. The technological controls overview summarizes how the A.8 controls fit together.
Part of Truvo's control-by-control ISO 27001 reference series
This post is part of the ISO 27001 certification guide. If you are building or tightening a secure development life cycle as part of an effective security program and want a second set of eyes on the control design, Truvo runs scoping calls.
Frequently Asked Questions
What is ISO 27001 A.8.25?
ISO 27001 A.8.25, secure development life cycle, is the Technological control in Annex A of ISO/IEC 27001:2022 that requires an organization to establish and apply rules for the secure development of software and systems. It covers security across the whole life cycle: requirements and threat modelling at design, secure coding, security testing gates, environment separation, code review, and a security sign-off before release.
What evidence satisfies A.8.25?
Typical A.8.25 evidence includes a documented secure development policy or SDLC standard, CI security-gate results from SAST, dependency scanning, and secret detection, pull request review records, threat models or security requirements for significant features, and release sign-offs. Auditors look for both the written rules and evidence that development followed them across the period. The same artifacts satisfy SOC 2 CC8.1.
How is A.8.25 different from A.8.28 and A.8.29?
A.8.25 is the umbrella control that defines the secure development life cycle and when each security activity applies. A.8.28 secure coding sets the specific coding standards developers follow during the build stage. A.8.29 security testing governs the testing performed in development and acceptance. A.8.28 and A.8.29 are activities that run inside the life cycle A.8.25 establishes.
Does A.8.25 require a CI/CD pipeline?
No. A.8.25 requires that security rules apply consistently across development; it does not mandate any particular tooling. A CI/CD pipeline with automated SAST, dependency scanning, and secret detection is the most common way to enforce the gates, but a smaller team or a legacy stack can satisfy the control with lightweight or open-source tools, provided the scans run consistently and a documented rule states that a failing gate blocks a release.
How does A.8.25 map to SOC 2 CC8.1?
A.8.25 maps fully to SOC 2 CC8.1. Both require that changes be developed, tested, reviewed, approved, and documented before they reach production. A secure development policy, CI security-gate results, pull request reviews, test-environment separation, and release approvals serve both frameworks without adaptation.
Do cloud and on-prem teams implement A.8.25 differently?
The secure development life cycle rules, gates, reviews, and sign-offs are the same regardless of where the application runs, because A.8.25 governs the development process rather than the host. The pipeline tooling and the scanners may differ by team size and stack, and legacy frameworks can require lighter-weight or open-source scanners, but the life cycle rules and the evidence they produce stay the same.
Ready to Start Your Compliance Journey?
Get a clear, actionable roadmap with our readiness assessment.
Contact Us
Free Report: The CPCSC Compliance Playbook
Join the waitlist for a free copy when it's released.
About the Author
Former security architect for Bank of Canada and Payments Canada. 20+ years building compliance programs for critical infrastructure.