Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 27034-5 defines the protocols and application security control data structures that enable interoperability between different tools and systems involved in application security management. While Parts 1 through 3 focus on the conceptual, organizational, and process aspects of application security, Part 5 addresses the technical interoperability layer — the data formats, communication protocols, and API specifications that allow ASC information to be exchanged between development tools, security testing platforms, governance systems, and audit tools. This standard is essential for organizations seeking to automate their application security workflows and integrate security tooling into their DevOps pipelines.
ISO/IEC 27034-5 specifies the Application Security Control Data (ASCD) model: a structured data representation for ASC information that can be serialized, transmitted, and interpreted by different software systems. The ASCD model defines formal schemas for ASC specifications, including the security requirement, control description, implementation guidance, verification criteria, and verification evidence. These schemas are designed to be technology-neutral, supporting XML, JSON, and other serialization formats. The standard also defines the metadata that must accompany ASCD exchanges, including version identification, authorship, approval status, and effective date.
The standard specifies several protocol profiles for different use cases. The offline exchange profile supports batch transfer of ASC libraries between systems using file-based exchange (XML or JSON files). The real-time query profile enables on-demand retrieval of ASC specifications via RESTful API calls. The event-driven profile supports publish-subscribe patterns where ASC updates are pushed to subscribed systems when changes occur. Each profile includes detailed message formats, error handling procedures, and security considerations for the exchange itself, including authentication, integrity protection, and confidentiality requirements for ASC data in transit.
| Exchange Profile | Use Case | Protocol | Timing | Security Requirements |
|---|---|---|---|---|
| Offline Exchange | Bulk transfer of ASC library between air-gapped environments | File-based (XML/JSON) with digital signature | Periodic (daily/weekly) | Digital signature for integrity, encryption for confidentiality |
| Real-time Query | CI/CD pipeline requests ASC for a specific application | RESTful API over HTTPS | On-demand (per build/deploy) | Mutual TLS authentication, OAuth 2.0 authorization |
| Event-driven | ASC library update triggers re-verification of affected applications | Pub/Sub message queue with webhook | Event-triggered (real-time) | Message signing, replay protection, access control |
| Streaming | Continuous verification results from security testing tools | gRPC or WebSocket stream | Continuous (real-time) | End-to-end encryption, rate limiting, message ordering |
The ASCD model defines four primary data object types. The ASCSpecification object contains the complete specification of an ASC, including its identifier, version, description, applicable contexts, security requirements, control descriptions, and references to related organizational policies. The ASCVerificationPlan object defines the verification approach, including verification methods (review, analysis, testing), tools to be used, acceptance criteria, and responsible roles. The ASCVerificationResult object captures the outcome of verification activities, including pass/fail status, evidence references, findings descriptions, and remediation recommendations. The ASCDeploymentContext object describes the specific application and environment to which the ASC applies, enabling traceability between ASC specifications and their deployed instances.
The standard defines a comprehensive set of attributes for each data object. For example, the ASCSpecification includes mandatory attributes such as ascID (globally unique identifier), versionNumber, status (draft, approved, deprecated), effectiveDate, expiryDate, relatedOASC (for A-ASCs that trace back to an O-ASC), and securityControls (a structured list of controls with implementation guidance). Optional attributes include applicableFrameworks (e.g., NIST CSF, OWASP ASVS), regulatoryReferences, and threatModelReferences. This rich data model enables sophisticated querying and analysis of the ASC portfolio across an organization.
From an engineering implementation perspective, ISO/IEC 27034-5 provides the blueprint for building an integrated application security toolchain. The standard recognizes that modern development environments use a diverse set of tools — static analysis (SAST), dynamic analysis (DAST), software composition analysis (SCA), container scanning, infrastructure-as-code security, and runtime protection — and that effective application security management requires these tools to work together. The ASCD model provides a common language that enables different tools to share security requirements and verification results.
The standard also addresses the automation of ASC verification within CI/CD pipelines. It defines how ASCVerificationPlan objects can be translated into pipeline stage definitions, how ASCVerificationResult objects can be consumed by pipeline orchestration tools to make release decisions, and how ASCDeploymentContext objects can be updated automatically when applications are deployed to different environments. This level of integration transforms application security from a manual review process into an automated quality gate within the software delivery lifecycle. The standard provides specific guidance for integrating with common CI/CD platforms, including Jenkins, GitLab CI, GitHub Actions, and Azure DevOps.