はじめにデジタルトランスフォーメーション(DX)の推進が叫ばれる近年、ソフトウェア開発において「DevSecOps」という概念が注目を集めています。DevSecOpsの正しい意味、似た概念である「DevOps」、アジャイル開発、ウォーターフォール開発等との違い、DXを促進するポイントについて解説していきます。DevSecOpsとは何か?「DevSecOps」とは開発(Developments)、セキュリティ(Security)、運用(Operations)の頭文字も組み合わせた造語です。日本国内では「デブセックオプス」と発音することが一般的です。ソフトウェア開発において、開発、セキュリティ、運用の各チームが連携しながら、システムの開発運用を行う手法を指します。DevOpsとの違いDevOpsとは、開発と運用が一体となって協力してソフトウェア開発を行う手法です。開発段階から、運用面(テスト、リリース、オペレーションなど)にもフォーカスすることで、組織のサイロ化を防ぎ、リリース時のトラブル発生のリスクを低減させることを目的としています。DevSecOpsは、DevOpsにセキュリティの観点を加えたものになります。それまでは独立していたセキュリティ対策を、開発段階で組み込むことで、脆弱性をはらむリスクの低減を実現します。アジャイル開発との違いDevSecOpsと似た概念にアジャイル開発というものがあります。アジャイル開発とは、計画、設計、開発、テストという4つの段階を反復させて開発していくという考え方で、開発スピード・生産性の向上、価値提供の速さが特徴です。そのため、短期間でのソフトウェア開発、高いリリース頻度が求められるWebサービスなどにおいて相性が良く、近年は様々な現場で採用されることが増えてきました。アジャイル開発とよく対比されるのが、ウォーターフォール開発です。要件定義から、設計、開発、テストを段階的に進めていく開発手法で、大規模システムやリリース頻度の低いコーポレートITのシステム開発などに用いられます。アジャイル開発、ウォーターフォール開発ともに、ソフトウェア開発・システム開発の手法であり、DevOpsやそれを発展させたDevSecOpsは異なる概念です。DevOpsやDevSecOpsは、ソフトウェアの提供における体制、組織、ツールなどを含む総合的な概念であり、各チームの連携的な運用でソフトウェア開発やシステム開発の品質を大きく向上させることを目的としています。セキュリティが追加された意味開発と運用という異なるチームを一体化するDevOpsの登場により、素早く安定したリリースが可能になりました。DevOpsの浸透は、概念だけでなく、それらを支える周辺のエコシステムが整ったことも大きな要因となっています。DevSecOpsは、ここにさらにセキュリティを組み合わせることで、開発するソフトウェアやシステムの品質をより向上するものです。従来より、セキュリティにまつわる問題は、ソフトウェアやシステムの提供において重要な課題でしたが、昨今のサイバー攻撃の高度化や情報システムの複雑さにより、セキュリティ課題はより一層深刻なものとなっています。開発・運用だけでなく、セキュリティをDecOpsの概念に統合することで、よりプロアクティブなセキュリティ品質の向上が図られるようになり、注目されるようになったのです。具体的なDevSecOpsの中身DevSecOpsの具体的なオペレーションは、各社によって異なりますが、一般的にソフトウェアのリリースやデプロイの前段階で、脆弱性スキャンなどを行うソフトウェアテストのフェイズに、コードの安全性に関するテストを統合するデプロイ時にインフラのセキュリティ設定について自動的にチェックするようにする新たな脆弱性が発見されたら即座に対応できるようにアラートを設定し、開発または運用のライフサイクルに取り込むなどといった活動が挙げられます。セキュリティエンジニアと開発や運用に携わるエンジニアが一体となることで、より効果的に安全でセキュアなソフトウェアの提供を実現できますが、特にソフトウェアやインフラのセキュリティは専門的な知識を要することが多いため、人材の確保や体制作りに課題を感じる企業も少なくありません。DXを促進するDevSecOpsとは独立行政法人情報処理推進機構(IPA)が発行する『DX白書』において、DXを実現するITシステムの共通要素のうちの一つに変化に対して俊敏かつ柔軟に対応できる「スピードアジリティ」が挙げられています。スピードアジリティとは言わば「変化対応力」です。参照元:独立行政法人情報処理推進機構,『DX白書2023』, P26スピードアジリティが重要な理由として、顧客への価値提供が遅れ、その離脱を招くリスクがあるためです。市場や顧客ニーズなど企業を取り巻く環境は急速に変化していきます。もしスピードアジリティがなければ、その変化への対応コストは増大し、リリースのスピードも落ちてしまいます。このスピードアジリティを備えたシステムを開発するための手法として、DevOpsはリリース頻度を高めつつ、品質の維持を確保した開発・運用体制を実現します。それに加えて、サービス提供および社内システムにおいても、DXを促進していく上ではセキュリティへの配慮は今後より重要になっていくことが予想されます。デジタル化を推進していく中で、セキュリティリスクは重大な経営リスクの一つとなり、その対応を間違えれば、顧客の離脱のみならず、企業の信用を下げる可能性があるからです。従って、DXの実現には、企業は素早いソフトウェアの提供と同時にセキュリティの確保を行うことが非常に大切です。その対応策として、DevSecOpsは非常に有効的な開発手法であるといえます。一方でDevSecOpsの実現には各チームの円滑な連携が必要不可欠です。開発、運用、セキュリティチームに加えてビジネス部門との連携も重要です。組織体制を含めた企業変革が求められます。また、急な要件変更が少ない大規模なシステムやリリース頻度が低いコーポレートITシステムにはDevSecOpsのメリットを生かしきれない場合があります。システムにあった開発手法を検討していく必要があります。企業のDXに貢献する新たなソリューション:Cygiene弊社セキュリティプロダクト、Cygieneは「クラウドの利活用と従業員セキュリティの両立」という課題を解決する全く新しいソリューションです。詳しい情報を知りたい方に向けてホワイトペーパーを配信しております。ご希望される方は下記のフォームよりお問い合わせください。ホワイトペーパーダウンロードはこちらから