← DevSecOps← DevSecOps
DevSecOpsDevSecOps19 Th7, 2026Jul 19, 202619 phút đọc13 min read

Giới thiệu về DevSecOpsIntroduction to DevSecOps

Thuộc bộ kiến thức DevSecOps Roadmap.

Tổng quan

DevSecOps là thực hành tích hợp bảo mật (security) vào mọi giai đoạn của vòng đời phát triển phần mềm — từ lập kế hoạch, viết code, cho đến build, test, deploy và vận hành — thay vì coi bảo mật là một bước kiểm tra cuối cùng trước khi release. Bản thân từ này là sự kết hợp của Development (phát triển), Security (bảo mật) và Operations (vận hành), thể hiện ý tưởng rằng bảo mật là mối quan tâm liên tục, hạng nhất (first-class), thuộc trách nhiệm của tất cả những ai tham gia xây dựng và vận hành phần mềm, chứ không phải công việc riêng của một đội chỉ xuất hiện ở cuối quy trình.

DevSecOps ra đời trực tiếp từ DevOps. DevOps đã phá bỏ bức tường ngăn cách giữa đội phát triển (development) và đội vận hành (operations), giúp phần mềm được xây dựng, kiểm thử và phát hành nhanh hơn, đáng tin cậy hơn nhờ tự động hóa, chia sẻ trách nhiệm và phản hồi liên tục (continuous feedback). Nhưng khi pipeline (đường ống phát hành) tăng tốc, các quy trình bảo mật truyền thống — review thủ công, pentest định kỳ, audit cuối chu kỳ — không thể theo kịp. Bảo mật hoặc trở thành nút thắt cổ chai (bottleneck) làm chậm release, hoặc bị bỏ qua/làm vội dưới áp lực deadline, dẫn đến vulnerability (lỗ hổng bảo mật) lọt vào production. DevSecOps giải quyết vấn đề này bằng cách đẩy công việc bảo mật lên sớm hơn và tự động hóa nó, để nó chạy liên tục song song với development và operations, cùng tốc độ với mọi thứ khác.

Bài viết này là điểm khởi đầu của bộ kiến thức DevSecOps, giới thiệu các mô hình tư duy cốt lõi — CIA triad, defense-in-depth, và shift-left security — trước khi vạch ra cách các chủ đề tiếp theo trong roadmap này (identity, cryptography, secure coding, threat modeling, CI/CD security, monitoring, incident response, compliance) khớp vào bức tranh tổng thể của vòng đời DevSecOps.

Kiến thức nền tảng

DevSecOps vs. DevOps

DevSecOps không phải là thứ thay thế DevOps — nó là DevOps với bảo mật được lồng ghép vào mọi giai đoạn thay vì gắn thêm vào sau cùng.

Khía cạnhDevOpsDevSecOps
Mục tiêu chínhPhát hành nhanh, đáng tin cậy nhờ hợp tác và tự động hóaPhát hành nhanh, đáng tin cậy, và an toàn
Thời điểm xử lý bảo mậtThường ở cuối (một buổi security review hoặc pentest trước release)Liên tục, ở mọi giai đoạn (thiết kế, code, build, test, deploy, vận hành)
Ai chịu trách nhiệm bảo mậtMột đội security riêng, thường tham gia muộnTất cả mọi người — developer, operator và security engineer cùng chia sẻ trách nhiệm (“security is everyone’s job”)
Vòng phản hồi (feedback loop)Phản hồi nhanh về lỗi build/test/deployPhản hồi nhanh về lỗi build/test/deploy lỗi bảo mật (vulnerability, cấu hình sai)
Trọng tâm công cụCI/CD, IaC, monitoring, configuration managementToàn bộ công cụ của DevOps cộng thêm SAST, DAST, SCA, secrets scanning, IaC security scanning, container/image scanning
Kiểu gate (cổng kiểm soát)Automated quality gate (test, coverage)Automated security gate song song với quality gate (chặn build khi có vulnerability nghiêm trọng)
Văn hóa”You build it, you run it""You build it, you secure it, you run it”
Chỉ số đo lườngDeployment frequency, lead time, MTTRVẫn các chỉ số DORA cộng thêm vulnerability density, mean time to remediate (MTTR cho bảo mật), % pipeline có security gate

Sự thay đổi văn hóa then chốt được thể hiện qua câu “bảo mật là trách nhiệm của tất cả mọi người.” Trong mô hình truyền thống, developer viết code và một đội security audit nó sau đó. Trong DevSecOps, developer được trang bị (thông qua đào tạo, công cụ và các “guardrail” — rào chắn tự động) để tự phát hiện và sửa nhiều vấn đề bảo mật, còn security engineer đóng vai trò người hỗ trợ, huấn luyện và chịu trách nhiệm với các vấn đề khó, mang tính hệ thống (threat modeling, review kiến trúc, incident response) thay vì chỉ là người gác cổng (gatekeeper).

Vì sao DevSecOps ra đời: vấn đề của bảo mật đặt ở cuối quy trình

Mô hình bảo mật phần mềm truyền thống đặt phần lớn hoạt động bảo mật ở cuối vòng đời:

  1. Mâu thuẫn giữa tốc độ và bảo mật. Khi tổ chức áp dụng DevOps và bắt đầu release nhiều lần một ngày, một quy trình bảo mật được thiết kế theo chu kỳ hàng quý hoặc theo từng release đơn giản là không thể theo kịp. Bảo mật hoặc trở thành mắt xích chậm nhất (làm trễ release nhiều ngày, nhiều tuần), hoặc bị bỏ qua hoàn toàn dưới áp lực deadline.
  2. Chi phí phát hiện muộn. Một vulnerability được phát hiện ở production tốn kém hơn rất nhiều để khắc phục so với khi phát hiện ở giai đoạn thiết kế hoặc coding — nó có thể đòi hỏi patch khẩn cấp, incident response, thông báo cho khách hàng, và thiệt hại uy tín, so với chỉ là một comment trong code review hay một pipeline check thất bại được phát hiện trong vài phút.
  3. Bảo mật là một silo riêng biệt. Khi security nằm trong một đội tách biệt khỏi công việc phát triển hằng ngày, developer ít có khả năng hiểu vì sao một vấn đề bị gắn cờ, còn đội security lại thiếu bối cảnh về kiến trúc hoặc ràng buộc của hệ thống. Điều này tạo ra ma sát và sự nghi ngờ lẫn nhau (“security cản trở chúng tôi” đối lại “dev không quan tâm đến bảo mật”).
  4. Quy trình thủ công, không lặp lại được. Các buổi review thủ công và pentest tại một thời điểm không thể mở rộng quy mô cho continuous delivery, và kết quả của chúng nhanh chóng lỗi thời khi code thay đổi hằng ngày.
  5. Bảo mật kiểu “tích ô” để đáp ứng compliance. Công việc bảo mật chỉ nhằm thỏa mãn checklist của một cuộc audit thường hời hợt và tách rời khỏi rủi ro thực tế, thay vì được dẫn dắt bởi sự hiểu biết thật sự về threat (mối đe dọa).

DevSecOps giải quyết tất cả những vấn đề này bằng cách đẩy bảo mật lên sớm hơn (shift-left), tự động hóa những gì có thể tự động hóa, và biến bảo mật thành một cuộc đối thoại liên tục giữa con người thay vì một cổng kiểm tra một lần duy nhất.

CIA triad

CIA triad là mô hình nền tảng cho việc bảo mật thực sự đang cố gắng bảo vệ điều gì. Mọi control (biện pháp kiểm soát), scanner, và quy trình trong DevSecOps cuối cùng đều tồn tại để bảo vệ một hoặc nhiều trong ba thuộc tính này.

Thuộc tínhĐịnh nghĩaVí dụ về sự cố
Confidentiality (Tính bảo mật)Thông tin chỉ được truy cập bởi những người được cấp quyềnMột S3 bucket cấu hình sai làm lộ dữ liệu cá nhân (PII) của khách hàng ra internet công cộng
Integrity (Tính toàn vẹn)Thông tin và hệ thống vẫn chính xác, đầy đủ, không bị thay đổi ngoài các hành động được cấp quyềnKẻ tấn công can thiệp vào build artifact trong pipeline CI/CD, chèn mã độc trước khi deploy
Availability (Tính sẵn sàng)Hệ thống và dữ liệu luôn sẵn sàng cho người dùng hợp lệ khi cầnMột cuộc tấn công DDoS hoặc ransomware mã hóa dữ liệu khiến dịch vụ production ngừng hoạt động

Một số framework mở rộng thêm CIA triad với Authenticity (xác thực danh tính/nguồn gốc) và Non-repudiation (chống chối bỏ — bằng chứng rằng một hành động được thực hiện bởi một chủ thể cụ thể và không thể phủ nhận), những thuộc tính này rất quan trọng trong bảo mật chuỗi cung ứng phần mềm (supply chain security — ví dụ: signed commit, signed container image) và audit logging.

Mọi thực hành được đề cập sau này trong roadmap đều quy về việc bảo vệ CIA triad — mã hóa (encryption) bảo vệ confidentiality, code signing và checksum bảo vệ integrity, còn redundancy/rate limiting/incident response bảo vệ availability.

Defense-in-depth (phòng thủ theo chiều sâu)

Defense-in-depth là nguyên tắc bảo mật nên được triển khai thành nhiều lớp độc lập, chồng lấn lên nhau, để khi một control đơn lẻ thất bại thì không dẫn đến việc toàn bộ hệ thống bị xâm phạm. Nguyên tắc này giả định rằng bất kỳ lớp nào cũng có thể thất bại — một rule firewall có thể bị cấu hình sai, một dependency có thể chứa CVE (lỗ hổng đã biết) chưa được vá, một developer có thể vô tình commit một secret — và dựa vào các lớp khác để bắt được những gì lớp đầu tiên bỏ sót.

Các lớp điển hình trong một hệ thống cloud-native hiện đại, theo hướng từ ngoài vào trong:

  1. Perimeter/network — firewall, WAF, chống DDoS, phân đoạn mạng (network segmentation), thiết kế VPC/subnet
  2. Identity và access — xác thực (authentication), phân quyền (authorization), MFA, chính sách IAM theo nguyên tắc least-privilege (xem Identity and Access Management)
  3. Application — secure coding, kiểm tra dữ liệu đầu vào (input validation), mã hóa dữ liệu đầu ra (output encoding), quản lý dependency (xem Secure Coding and Web Application Security)
  4. Data — mã hóa khi lưu trữ (at rest) và khi truyền tải (in transit), quản lý khóa mã hóa (key management), phân loại dữ liệu
  5. Infrastructure/platform — hardening container và OS, quản lý bản vá (patch management), quét bảo mật IaC
  6. CI/CD và supply chain — artifact được ký (signed), kiểm soát truy cập pipeline, xác minh nguồn gốc dependency (xem CI/CD and Supply Chain Security)
  7. Monitoring và phát hiện — logging, alerting, phát hiện bất thường (anomaly detection) (xem Monitoring and Logging)
  8. Response (ứng phó) — playbook incident response, forensics, khôi phục (xem Incident Response and Digital Forensics)

Không lớp nào được kỳ vọng là hoàn hảo; chính sự kết hợp giữa các lớp mới tạo nên khả năng phục hồi (resilience) của hệ thống. Điều này liên quan trực tiếp đến nguyên tắc “không có điểm lỗi đơn nhất” (no single point of failure) — vừa áp dụng cho độ tin cậy (reliability, thuộc DevOps) vừa áp dụng cho bảo mật (DevSecOps).

Shift-left security

“Shift-left” nghĩa là dịch chuyển các hoạt động bảo mật lên càng sớm càng tốt trong vòng đời phát triển phần mềm (SDLC) — về mặt khái niệm là dịch sang trái trên một trục thời gian chạy từ requirements đến production.

Giai đoạn SDLCCách tiếp cận truyền thống (shift-right)Cách tiếp cận shift-left DevSecOps
RequirementsKhông xem xét bảo mậtYêu cầu bảo mật và compliance được định nghĩa song song với yêu cầu chức năng
Design (thiết kế)Không có review chính thứcThreat modeling và phân tích rủi ro kiến trúc (xem Threat Modeling and Risk Assessment)
CodeBảo mật bị bỏ qua trong lúc phát triểnChuẩn secure coding, plugin bảo mật trong IDE, quét secrets trước khi commit (pre-commit), peer review có góc nhìn bảo mật
BuildKhông có kiểm tra tự độngSCA (quét dependency), SAST, quét IaC chạy tự động trong CI
TestChỉ pentest thủ công trước releaseDAST, fuzzing, test case bảo mật tự động được tích hợp vào bộ test
DeployKý duyệt thủ công, đôi khi bị bỏ quaAutomated policy-as-code gate, xác minh chữ ký image/artifact, admission control
Operate (vận hành)Đội security phản ứng với incident sau khi xảy raMonitoring liên tục, bảo vệ runtime, cảnh báo tự động, và quy trình incident response được định nghĩa rõ

Shift-left không có nghĩa là bỏ các kiểm tra ở giai đoạn sau (điều đó sẽ tạo ra tình trạng “chỉ shift-left”, tái tạo lại một điểm lỗi đơn nhất). Một chương trình DevSecOps trưởng thành vẫn xác thực bảo mật ở các giai đoạn sau (ví dụ: DAST ở staging, runtime monitoring ở production) — nó chỉ đơn giản là bổ sung thêm các kiểm tra sớm hơn, rẻ hơn, để ít vấn đề còn tồn tại đến các giai đoạn tốn kém hơn đó. Điều này đôi khi được tóm gọn là “shift-left, nhưng đừng quên shield-right” — bảo mật phải trải dài toàn bộ vòng đời, chứ không chỉ dồn về một đầu của nó.

Khái niệm chính

Vòng đời DevSecOps, ánh xạ với roadmap này

Bảng dưới đây thể hiện cách mỗi giai đoạn điển hình trong vòng đời DevSecOps liên hệ đến các chủ đề chuyên sâu hơn được trình bày sau trong bộ kiến thức này.

Giai đoạn vòng đờiĐiều gì xảy raChủ đề liên quan
Nền tảng (Foundations)Xây dựng kỹ năng scripting, tự động hóa, OS/networking cần thiết để làm việc xuyên suốt pipelineProgramming and Scripting Foundations
IdentityĐảm bảo chỉ đúng người và đúng dịch vụ mới truy cập được đúng tài nguyênIdentity and Access Management
Design (thiết kế)Xác định điều gì có thể xảy ra sai sót trước khi viết codeThreat Modeling and Risk Assessment
CodeViết code có khả năng chống lại các lớp vulnerability phổ biến (injection, XSS, broken auth, v.v.)Secure Coding and Web Application Security
Build/DeployBảo mật chính bản thân pipeline — dependency, build server, ký artifact, xác minh nguồn gốcCI/CD and Supply Chain Security
Operate (vận hành)Quan sát hệ thống theo thời gian thực để phát hiện dấu hiệu bị xâm phạm hoặc lạm dụngMonitoring and Logging
Respond (ứng phó)Xử lý sự cố bảo mật khi phát hiện được kích hoạt, và điều tra nguyên nhân gốc rễIncident Response and Digital Forensics
Govern (quản trị)Đáp ứng yêu cầu về pháp lý và rủi ro tổ chức trên toàn bộ vòng đờiCompliance, Governance, and Risk Management

Mã hóa (encryption), quản lý khóa (key management), bảo mật mạng (network security), và bảo mật container/cloud (được trình bày trong các chủ đề riêng của roadmap này) xuyên suốt gần như mọi giai đoạn ở trên thay vì chỉ thuộc về một giai đoạn duy nhất — chúng là những năng lực nền tảng mà phần còn lại của vòng đời phụ thuộc vào.

Vai trò và kỹ năng của một DevSecOps engineer

Một DevSecOps engineer thường kết hợp ba nhóm kỹ năng:

Trên thực tế, hầu hết tổ chức không kỳ vọng một người phải am hiểu sâu cả ba nhóm kỹ năng; thay vào đó họ xây dựng sự hợp tác liên chức năng (cross-functional collaboration):

Mô hình hợp tác này — đôi khi được gọi là “paved road” hoặc “golden path” — chính là điều giúp bảo mật mở rộng quy mô: thay vì một đội trung tâm phải review thủ công mọi thay đổi, họ xây dựng guardrail và công cụ tự phục vụ (self-service) để con đường an toàn trở thành con đường dễ dàng nhất cho tất cả mọi người khác.

Tổng quan các nhóm công cụ trong toolchain DevSecOps

Các nhóm công cụ này xuất hiện xuyên suốt vòng đời DevSecOps; mỗi nhóm sẽ được trình bày sâu hơn ở các chủ đề sau, nhưng có một định nghĩa cơ bản ngay từ đầu sẽ rất hữu ích.

NhómViết tắtChức năngVí dụ công cụ
Static Application Security TestingSASTPhân tích source code (không chạy chương trình) để tìm các pattern không an toàn đã biếtSemgrep, SonarQube, CodeQL, Checkmarx
Dynamic Application Security TestingDASTKiểm thử ứng dụng đang chạy từ bên ngoài, mô phỏng hành vi kẻ tấn côngOWASP ZAP, Burp Suite
Software Composition AnalysisSCAQuét dependency/thư viện để tìm vulnerability đã biết (CVE) và vấn đề về licenseSnyk, Dependabot, OWASP Dependency-Check
Quét Infrastructure as CodeIaC scanningQuét manifest Terraform/CloudFormation/Kubernetes để tìm cấu hình không an toàn trước khi deployCheckov, tfsec, KICS
Quét secretsPhát hiện credential, API key, token bị hardcode trong code hoặc lịch sử commitGitleaks, TruffleHog, GitHub secret scanning
Quét container/imageQuét image container để tìm gói OS có vulnerability và cấu hình saiTrivy, Grype, Clair
Interactive Application Security TestingIASTKết hợp đặc điểm của SAST và DAST bằng cách instrument ứng dụng đang chạy trong lúc testContrast Security

Best Practices

Tài liệu tham khảo

Part of the DevSecOps Roadmap knowledge base.

Overview

DevSecOps is the practice of integrating security into every stage of the software delivery lifecycle — from planning and coding through building, testing, deploying, and operating — rather than treating security as a final checkpoint before release. The word itself is a portmanteau of Development, Security, and Operations, signaling that security is a first-class, continuous concern shared by everyone involved in building and running software, not a separate team that shows up at the end.

DevSecOps grew directly out of DevOps. DevOps broke down the wall between development and operations teams so that software could be built, tested, and released faster and more reliably through automation, shared ownership, and continuous feedback. But as delivery pipelines sped up, traditional security processes — manual reviews, periodic penetration tests, end-of-cycle audits — could not keep pace. Security became either a bottleneck that slowed releases down, or was skipped/rushed under deadline pressure, leading to vulnerabilities reaching production. DevSecOps addresses this by moving security work earlier and automating it so it runs continuously alongside development and operations, at the same speed as everything else.

This note is the entry point for the DevSecOps knowledge base and introduces the core mental models — the CIA triad, defense-in-depth, and shift-left security — before mapping out how later topics in this roadmap (identity, cryptography, secure coding, threat modeling, CI/CD security, monitoring, incident response, compliance) fit into the overall lifecycle.

Fundamentals

DevSecOps vs. DevOps

DevSecOps is not a replacement for DevOps — it is DevOps with security woven into every phase instead of bolted on afterward.

AspectDevOpsDevSecOps
Primary goalFast, reliable delivery through collaboration and automationFast, reliable, and secure delivery
When security is addressedOften at the end (a security review or pentest before release)Continuously, at every stage (design, code, build, test, deploy, run)
Who owns securityA separate security team, usually engaged lateEveryone — developers, operators, and security engineers share responsibility (“security is everyone’s job”)
Feedback loopFast feedback on build/test/deploy failuresFast feedback on build/test/deploy and security failures (vulnerabilities, misconfigurations, policy violations)
Tooling focusCI/CD, IaC, monitoring, configuration managementAll of DevOps tooling plus SAST, DAST, SCA, secrets scanning, IaC security scanning, container/image scanning
Gate styleAutomated quality gates (tests, coverage)Automated security gates alongside quality gates (fail the build on critical vulnerabilities)
Culture”You build it, you run it""You build it, you secure it, you run it”
MetricsDeployment frequency, lead time, MTTRSame DORA metrics plus vulnerability density, mean time to remediate (MTTR for security), % of pipelines with security gates

The key cultural shift is captured in the phrase “security is everyone’s responsibility.” In a traditional model, developers write code, and a security team audits it later. In DevSecOps, developers are equipped (through training, tooling, and guardrails) to catch and fix many security issues themselves, with security engineers acting as enablers, coaches, and owners of the harder cross-cutting problems (threat modeling, architecture review, incident response) rather than gatekeepers.

Why DevSecOps emerged: the problem with security as a final gate

Traditional software security models placed most security activity at the end of the lifecycle:

  1. Speed vs. security tension. Once organizations adopted DevOps and started shipping multiple times a day, a security process designed around quarterly or release-based reviews simply could not keep up. Either security became the slowest link in the chain (delaying releases for days or weeks), or teams bypassed it entirely under deadline pressure.
  2. Cost of late discovery. A vulnerability found in production is far more expensive to fix than one found during design or coding — it may require emergency patches, incident response, customer notification, and reputational damage, compared to a code review comment or a failed pipeline check caught in minutes.
  3. Security as a separate silo. When security lived in its own team disconnected from daily development work, developers had little visibility into why something was flagged, and security teams had little context on the system’s architecture or constraints. This bred friction and mutual distrust (“security blocks us” vs. “devs don’t care about security”).
  4. Manual, non-repeatable processes. Point-in-time manual reviews and pentests don’t scale to continuous delivery, and their findings age quickly as code changes daily.
  5. Compliance-driven, checkbox security. Security work done only to satisfy an audit checklist tends to be superficial and disconnected from actual risk, rather than being driven by a genuine understanding of threats.

DevSecOps responds to all of these by pushing security earlier (shift-left), automating what can be automated, and making security an ongoing conversation between people rather than a one-time gate.

The CIA triad

The CIA triad is the foundational model for what “security” is actually trying to protect. Every control, scanner, and process in DevSecOps ultimately exists to preserve one or more of these three properties.

PropertyDefinitionExample failure
ConfidentialityInformation is only accessible to those authorized to see itA misconfigured S3 bucket exposes customer PII to the public internet
IntegrityInformation and systems remain accurate, complete, and unaltered except by authorized actionAn attacker tampers with a build artifact in the CI/CD pipeline, injecting malicious code before deployment
AvailabilitySystems and data are accessible to authorized users when neededA DDoS attack or ransomware encryption takes a production service offline

Some frameworks extend the triad with Authenticity (verifying identity/origin) and Non-repudiation (proof that an action was performed by a specific actor and cannot be denied), which matter heavily in supply chain security (e.g., signed commits, signed container images) and audit logging.

Every practice covered later in this roadmap maps back to protecting the CIA triad — encryption protects confidentiality, code signing and checksums protect integrity, and redundancy/rate limiting/incident response protect availability.

Defense-in-depth

Defense-in-depth is the principle that security should be implemented as multiple independent, overlapping layers, so that the failure of any single control does not lead to a full compromise. It assumes that any one layer can fail — a firewall rule might be misconfigured, a dependency might have an unpatched CVE, a developer might commit a secret by mistake — and relies on other layers to catch what the first one missed.

Typical layers in a modern cloud-native system, outside-in:

  1. Perimeter/network — firewalls, WAF, DDoS protection, network segmentation, VPC/subnet design
  2. Identity and access — authentication, authorization, MFA, least-privilege IAM policies (see Identity and Access Management)
  3. Application — secure coding practices, input validation, output encoding, dependency management (see Secure Coding and Web Application Security)
  4. Data — encryption at rest and in transit, key management, data classification
  5. Infrastructure/platform — container and OS hardening, patch management, IaC security scanning
  6. CI/CD and supply chain — signed artifacts, pipeline access control, dependency provenance (see CI/CD and Supply Chain Security)
  7. Monitoring and detection — logging, alerting, anomaly detection (see Monitoring and Logging)
  8. Response — incident response playbooks, forensics, recovery (see Incident Response and Digital Forensics)

No single layer is expected to be perfect; the combination is what makes the system resilient. This is directly related to the principle of “no single point of failure” — both for reliability (DevOps) and for security (DevSecOps).

Shift-left security

“Shift-left” means moving security activities as early as possible in the software development lifecycle (SDLC) — conceptually to the left on a timeline that runs from requirements to production.

SDLC phaseTraditional (shift-right) approachShift-left DevSecOps approach
RequirementsSecurity not consideredSecurity and compliance requirements defined alongside functional requirements
DesignNo formal reviewThreat modeling and architecture risk analysis (see Threat Modeling and Risk Assessment)
CodeSecurity ignored during developmentSecure coding standards, IDE security plugins, pre-commit secrets scanning, peer review with a security lens
BuildNo automated checksSCA (dependency scanning), SAST, IaC scanning run automatically in CI
TestManual pentest before release onlyDAST, fuzzing, automated security test cases integrated into the test suite
DeployManual sign-off, sometimes skippedAutomated policy-as-code gates, image/artifact signing verification, admission control
OperateSecurity team reacts to incidents after the factContinuous monitoring, runtime protection, automated alerting, and a defined incident response process

Shifting left does not mean removing checks later in the pipeline (that would be “shift-left only,” which recreates a single point of failure). A mature DevSecOps program still validates security in later stages (e.g., DAST in staging, runtime monitoring in production) — it simply adds earlier, cheaper checks so fewer issues survive to reach those later, more expensive stages. This is sometimes summarized as “shift-left, but don’t forget to shield-right” — security must span the entire lifecycle, not just move to one end of it.

Key Concepts

The DevSecOps lifecycle, mapped to this roadmap

The table below shows how a typical DevSecOps lifecycle phase connects to the deeper topics covered later in this knowledge base.

Lifecycle phaseWhat happensRelated topic
FoundationsBuilding the scripting, automation, and OS/networking skills needed to work across the pipelineProgramming and Scripting Foundations
IdentityEnsuring only the right humans and services can access the right resourcesIdentity and Access Management
DesignIdentifying what could go wrong before writing codeThreat Modeling and Risk Assessment
CodeWriting code that resists common vulnerability classes (injection, XSS, broken auth, etc.)Secure Coding and Web Application Security
Build/DeploySecuring the pipeline itself — dependencies, build servers, artifact signing, provenanceCI/CD and Supply Chain Security
OperateObserving systems for signs of compromise or misuse in real timeMonitoring and Logging
RespondHandling security incidents when detection triggers, and investigating root causeIncident Response and Digital Forensics
GovernMeeting regulatory and organizational risk requirements across the whole lifecycleCompliance, Governance, and Risk Management

Encryption, key management, network security, and container/cloud security (covered in their own dedicated topics in this roadmap) cut across nearly every phase above rather than belonging to a single one — they are foundational capabilities the rest of the lifecycle depends on.

Roles and skills of a DevSecOps engineer

A DevSecOps engineer typically combines three skill areas:

In practice, most organizations don’t expect one person to be deeply expert in all three; instead they build cross-functional collaboration:

This collaboration model — sometimes called “paved road” or “golden path” — is what allows security to scale: instead of a central team manually reviewing every change, they build guardrails and self-service tools that make the secure path the easy path for everyone else.

DevSecOps toolchain categories at a glance

These tool categories recur throughout the DevSecOps lifecycle; each is covered in more depth in later topics, but a working definition of each is useful from the start.

CategoryAbbreviationWhat it doesExample tools
Static Application Security TestingSASTAnalyzes source code (without running it) for known insecure patternsSemgrep, SonarQube, CodeQL, Checkmarx
Dynamic Application Security TestingDASTTests a running application from the outside, simulating attacker behaviorOWASP ZAP, Burp Suite
Software Composition AnalysisSCAScans dependencies/libraries for known vulnerabilities (CVEs) and license issuesSnyk, Dependabot, OWASP Dependency-Check
Infrastructure as Code scanningIaC scanningScans Terraform/CloudFormation/Kubernetes manifests for insecure configuration before deploymentCheckov, tfsec, KICS
Secrets scanningDetects hardcoded credentials, API keys, and tokens in code or commit historyGitleaks, TruffleHog, GitHub secret scanning
Container/image scanningScans container images for vulnerable OS packages and misconfigurationsTrivy, Grype, Clair
Interactive Application Security TestingIASTCombines aspects of SAST and DAST by instrumenting the running application during testsContrast Security

Best Practices

References