What if you could deploy enterprise-grade security with just a few lines of YAML?
That’s exactly what one global DevOps team set out to do – and shared with us in detail.
Based on insights from a senior developer working hands-on with one of our clients, this article breaks down how they built a scalable, automated scanning solution using OWASP ZAP, fully integrated into Azure and CI/CD pipelines.
The result?
A cost-effective tool that runs in minutes, fits seamlessly into developer workflows, and delivers security at scale.
Modern enterprises often maintain hundreds of web endpoints across development, testing, and production environments. Each represents a potential entry point for attackers, yet manually testing them all is prohibitively time-consuming and expensive.
The team identified several key requirements for their security scanning solution.
Cost efficiency | Minimise cloud resource consumption while maintaining capability |
Ease of use | Allow non-security specialists to run comprehensive scans |
Scalability | Support scanning anything from a single endpoint to entire environments |
Safe testing | Ensure that security testing itself doesn't cause production outages |
Actionable results | Generate reports that enable teams to prioritise remediation |
Rather than investing in expensive commercial security tools, the team opted to leverage OWASP ZAP
(Zed Attack Proxy) – a widely-respected open-source security testing tool – and orchestrate it through a custom Azure architecture.
The solution's architecture was deliberately kept minimal but powerful
Azure Storage Account | Stores scan configurations, test histories, and results |
Azure Application Insights | Monitors scan performance and capture operational telemetry |
Azure Key Vault | Securely manages credentials and API keys |
Azure Container Instances | Dynamically spawns containerised OWASP ZAP instances |
Azure Pipelines | Orchestrates the entire workflow as a template |
To make the tool practical for everyday use, the team focused on developer experience — adding features that simplified adoption without compromising flexibility.
Scan retention when needed
By default, containers were auto-terminated after each scan to save on costs and resources. But for debugging or deeper inspection, users could opt to retain the container temporarily. As the developer put it: there was an option or checkbox where you could keep the container instance, for example, if you wanted to do some debugging and see more details or troubleshooting if something was not working as expected.
Pipeline templating
To lower the barrier to entry, the team built templated Azure Pipelines where users only needed to provide minimal input – such as the target URL and scan type. This made it easy for teams to integrate security scans into their CI/CD workflows without needing security expertise.
After proving the concept with single-endpoint scanning, the team began work on a more sophisticated capability: scanning multiple endpoints in a single operation.
This enhancement would allow security teams to perform comprehensive security posture assessments, generating consolidating reports that identify systemic issues across the application landscape.
The implementation plan includes:
When building a security testing tool, the team had to address several meta-security considerations.
Running aggressive scans against production systems could potentially trigger denial of service conditions. To mitigate this risk:
The security scanning tool itself could become a security risk if improperly accessed. The team implemented tight access controls:
The containerised nature of the solution introduced its own security considerations:
The security scanning solution delivered several quantifiable benefits.
Vulnerability discovery | Identified hundreds of previously unknown security issues across web applications. |
Cost efficiency | Achieved comprehensive security testing at approximately 10% the cost of commercial alternatives. |
Developer adoption | Simplified interface led to voluntary adoption by multiple development teams. |
Security education | Scan reports served as educational tools, helping developers understand common security flaws. |
For organisations looking to implement similar security automation solutions, here are our technical insights:
Building internal security tools doesn't always require significant investment or commercial products. With thoughtful architecture and modern cloud services, organisations can create effective, scalable security testing capabilities that deliver enterprise-grade results at a fraction of the cost.
The OWASP ZAP implementation described here demonstrates how pragmatic engineering can solve complex security challenges while maintaining the agility that modern development teams require. By combining open-source tools with cloud-native architecture, the team created a solution that scales with the organisation's needs while encouraging a security-first mindset across development teams.
This article is part of a series examining DevOps solutions delivered by Pwrteams-built teams. Don't miss our related pieces on Azure Cost Optimisation and Front Door Consolidation from the same technical team.