您可能聽過 DevOps,不過是否聽過 DevSecOps?DevSecOps 的概念是指使軟體安全性成為整個軟體交付程序的核心部分。
若要瞭解這為什麼很重要,必須考量軟體安全性過去的運作方式。長久以來,軟體安全作業都是與生產軟體所需的其他程序分開執行。開發人員負責撰寫程式碼,IT 團隊在部署軟體時並未考慮太多安全性。只有在撰寫軟體並放置在生產環境之後,安全工程師才會檢查程式碼或其託管環境中可能存在的潛在弱點。
這種軟體安全方法相當沒有效率,尤其是在部署速度加快的雲端環境中。如果偵測到安全問題,通常需要撤回已經撰寫和部署的程式碼。這也表示問題通常在軟體投入生產後才被發現,導致企業面臨安全威脅。
DevSecOps 也稱為「測試左移」安全性,藉由將安全性整合到軟體交付程序的所有階段來解決這些問題。這可以確保開發人員在撰寫程式碼時考量安全性,確保軟體在部署之前通過安全性問題測試,而且確保 IT 團隊規劃解決部署後出現的安全問題。
在 DevOps 上建立 DevSecOps
DevSecOps 無法取代 DevOps。這只是將 DevOps 背後的核心概念擴大,亦即開發人員和 IT 團隊應該密切合作來達到安全性,而不是在孤島中各自作業。有效的 DevSecOps 表示接受 DevOps 並將安全性整合到完整的 CI/CD 開發管道中。
DevSecOps 是文化,而不是工具
許多工具和程序可以協助企業實現 DevSecOps,不過 DevSecOps 終究不是特定的工具或程序。這是文化。
DevSecOps 歸結為在企業中灌輸正確的文化價值觀。開發人員、IT 團隊、安全專家以及參與軟體交付的其他所有人員都必須接受這種想法,亦即軟體安全性是這些人員工作的首要之務。在做出與應用程式相關的任何決定之前,整個團隊應該考量安全隱患。如果團隊這麼做,表示您已經實現 DevSecOps。
實施 DevSecOps
在實現 DevSecOps 的可能途徑中,對於貴企業而言的最佳方案 (或理想組合) 將視您的需求而定。一般而言,下列策略有助於您在企業中實施 DevSecOps 文化:
教育:確保軟體交付程序中的所有相關各方都瞭解現代安全威脅以及因應這些威脅的重要性。
溝通:在所有團隊成員之間建立有效的溝通管道,以便成員可以迅速共用與安全問題有關的資訊。
安全劇本:開發「劇本」,藉以指定不同的團隊成員應該如何因應指定類型的安全事件。
稽核和合規性:使安全稽核和合規性檢查成為軟體交付程序的例行部分。
採用正確的工具:尋求 API 式雲端安全工具,協助您在雲端中自動實施安全性和合規性政策。
使開發人員關心安全性
嘗試實施 DevSecOps 時,大多數企業都會遭遇來自開發人員團隊的最大阻力。問題在於:您如何說服開發人員關注安全性、將安全性納入到工作負載中並學習技能?
正確的工具有助於您進行 DevSecOps 轉換。藉由實施使用雲端供應商 API 自動化政策的工具,開發人員可以隨時隨地學習,避免犯下不利的錯誤。您可以使用雲端原生工具在 AWS 中自動執行政策。不過,如果您使用多雲端部署、受到嚴格的合規性規範約束或採用擴大到多個帳戶的 AWS 環境,則可能需要使用第三方工具才能透過單一主控台有效執行此項操作並管理所有內容。如需選擇適用工具的提示,請參閱此篇部落格貼文。
若要瞭解 DHI Group 如何成功建立 DevSecOps 文化的第一手資料,請參閱此篇部落格貼文:從「DevOps 與 SecOps」到 DevSecOps。