何謂 DevSecOps？
在現代環境中，不論現在或未來，容器和微型服務之類的應用程式與服務都是敏感資料的傳遞管道，必須做好嚴密的安全措施。
經驗豐富的開發人員或 IT 人員都知道，DevOps 相當重視安全，不過，鮮少有人知道 DevOps 是與資訊安全相輔相成的方法。這就是 DevSecOps 的目的，因為 DevSecOps 將安全觀念融入於 DevOps 的思考模式，避免人們事後才發現忽略了安全措施。
為具體討論 DevOps 文化和方法如何與安全結合，我找到機會與 Bluestone Analytics 資料安全公司的技術長兼共同創辦人 Joseph DePlato 進行交談。DePlato 是位專業駭客，曾擔任過 BP、American Express、Home Depot 和 Palantir 等公司的資深網路安全顧問。
一想到 DevOps，就會想到連續完成任務。DevOps 是種敏捷開發模型與方法，唯一的目的就在於簡化 IT 與開發團隊之間的互動流程。不過，想到 DevOps 的時候，我們也應該思考開發團隊和 IT 運作團隊與軟體測試之間的互動 (若是 DevSecOps，則應思考這兩個團隊與安全團隊之間的互動)。
DevSecOps 是指將安全融入敏捷架構的模式。其概念是要讓軟體開發生命週期當中的所有成員共同承擔責任，而不是只將安全視為每次發佈軟體之間用於填補漏洞的手段。要做到這一點，就必須加強開發人員、測試人員、安全團隊以及運作部門之間的溝通。
這些團隊剛接觸到 DevOps 這個概念時，並不會立即聯想到安全方面。這一點將有所改變。
過去組織是站在防守的立場，而現在，大家都知道安全和軟體開發流程的其他環節一樣重要。於是，DevSecOps 應運而生。控制敏捷架構的效率之餘，我們亦需要重視資訊安全。
那麼，究竟誰該為安全負責？安全是必須共同承擔的責任，相信這不是您第一次聽到這個說法。IT 團隊知道無法充分保護每一個人，完全抵擋住網路釣魚的攻擊，因此會訓練員工養成這樣的情操。對於較偏重技術層面的業務也是如此要求。安全團隊可以大談安全實務理念並實作通訊協定，不過，開發團隊終究需要在撰寫所有程式碼時考慮安全問題。
DePlato 又解釋了幾個安全程序自動處理流程的範例。例如，可以每天使用第三方掃描器分析新版本與新程式碼。
自動化是相當重要的助力，軟體開發需要符合敏捷與 DevOps 流程的預期，要快速且不中斷，因此自動化格外重要。
安全只不過是敏捷開發過程中的一個小齒輪。不過，實施變化不見得就要讓 IT、安全或開發團隊備受困擾。只要思維方式正確，再借助自動化的力量，就能開發出更安全的軟體，從而建立更有安全保障的世界。
您的團隊如何將安全融入於軟體開發生命週期？歡迎在下方留言一起討論。