Googleが激推しする「セキュリティのシフトレフト」とは? 効果と方法を解説:Google Cloudツールのユースケースもある
Googleはソフトウェア開発ライフサイクルにおけるセキュリティの「シフトレフト」が重要な理由を発表した。Google Cloud Platform上でシフトレフトを実現するユースケースも示した。
Googleは2022年7月9日(米国時間)、ソフトウェア開発ライフサイクル(SDLC)におけるセキュリティの「シフトレフト」が重要な理由を発表した。加えて、同社のクラウドサービス「Google Cloud Platform」(GCP)で提供されているツールを活用し、シフトレフトとともに、SDLCを通じた自動テストを実現するユースケースも紹介した。
SDLCにおけるセキュリティのシフトレフトは、ソフトウェア開発プロセスの早い段階(左側)でセキュリティを考慮することで、その後の本番環境(右側)におけるソフトウェア関連のセキュリティ不具合を減らそうとする取り組みを指す。
セキュリティのシフトレフトが重要な理由とは
Google CloudのDevOps Research and Assessment(DORA)チームは、調査レポート「2016 State of DevOps Report」(2016年のDevOpsの現状調査報告)の中で、ほとんどのセキュリティテストとツールは、開発ライフサイクルを通じて継続的に使用されるのではなく、リリース後に使用されていることを明らかにした。
セキュリティテストとツールのこうした使用状況は、コストや作業負担の増加につながっていた。テストで見つかった問題を修正するために、アーキテクチャの大きな変更や、追加の統合テストが必要になる場合があったからだ。
従来のテストパターン セキュリティ上の不具合(薄紫線)が作り込まれるフェーズ(本番環境と類似のテスト環境:staging)の後、リリース前までセキュリティチームがツールを使って修正する(青色線)ため、コスト(赤線)がリリース後に急上昇していた(提供:Google)
セキュリティテストを開発フェーズで実行すると、セキュリティの不具合を早期に発見し、すぐに修正できる。その結果、本番稼働後の不具合が少なくなり、修正作業やアーキテクチャの変更も少なくなる。SDLCの早い段階でセキュリティを統合することで、セキュリティの不具合に加え、関連する修正コストが全体的に減少することを、次の図は示している。
DORAチームは、調査レポート「2021 State of DevOps Report」(2021年のDevOpsの現状調査報告)では、セキュリティをシフトレフトする必要性を訴えるとともに、SDLCを通じて、自動化されたテスト実行を提唱した。
自動テストは開発者に追加のスキルや介入を必要とせず、開発コードを継続的にテストするのに便利だと、Googleは述べている。こうした自動テストにより、開発者は迅速なイテレーションを続けることができ、他のステークホルダーは、一般的な不具合が特定、修正されているという確信を持てるとしている。
Google Cloudでシフトレフトを実行する具体的な方法は?
DORAチームが調査で得たコードのセキュリティに関する知見は、クラウドインフラのセキュリティにも適用できる。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 「シフトレフト」がセキュリティ対策やインシデント対応にも有効な理由
@ITは、2018年6月22日、東京で「@ITセキュリティセミナー」を開催した。本稿では、基調講演「もし組織に、突然サイバー攻撃が予告されたなら」の内容をお伝えする。 - CI/CDは何がまずいのか、コード作成から本番デプロイまでの時間短縮に注力
オブザーバビリティツールを手掛けるhoneycomb.ioの共同創業者でCTOを務めるチャリティ・メージャーズ氏が、CI/CDの問題点を指摘した。CIにばかり注力せず、CDにも気を配るべきであり、特にコード作成から本番環境へのデプロイまでの「時間の短縮」にフォーカスすべきだという。 - アジャイルとDevOpsはどう違う?
アジャイルとDevOpsはいずれも、「最終プロダクトをできるだけ効率的かつ迅速に提供する」ことを目的としている。では2つの方法論は、どこが異なるのか。WhiteSourceは「チームと分担」「戦略とプロセス」に違いがあると主張する。