継続的インテグレーション/継続的デプロイメント (CI/CD) パイプラインは、ソフトウェア配信プロセスを自動化します。 コードをビルドし、テストを実行し、新しいバージョンのアプリケーションを安全にデプロイします。
実際には、CI/CDパイプラインは、コードとプロセス(例: ワークフローの構築とテスト)、およびアプリケーション配信のさまざまな側面を自動化できるツール。 従来、CI/CDパイプラインのツールとプロセスは、ワークフローのコミット→構築→テスト→デプロイに重点を置いており、多くの場合、セキュリティはそのリストに顕著に欠けていました。
多くの場合、セキュリティは、スキャン、ペネトレーションテスト、セキュリティ専門家によるアドホック分析の形で開発の終盤に行われました。 しかし、開発サイクルの終わりまで待ってセキュリティについて考え始めると、問題の修復が遅くなり、痛みが増しました。 運用上の俊敏性を維持しながらこの問題に対処する必要性から、「シフトレフトセキュリティ」と DevSecOpsのツールとプラクティスが人気を博しました。
CI/CDパイプラインを詳しく見て、DevSecOpsツールがセキュリティの統合にどのように役立つかについて説明します。
効果的な CI/CD パイプラインの構築と維持には作業が必要です。 サイトリライアビリティエンジニアやDevOpsのプロに聞いてみてください。 したがって、ビジネス上の利点を理解して、努力する価値がある理由を理解することが重要です。 では、そのメリットとは何でしょうか?
まったく同じ CI/CD パイプラインは 2 つとありませんが、「従来の」CI/CD パイプラインで使用されるツールやプロセスの多くは、いくつかの特定のカテゴリのいずれかに分類できます。
これらの機能に加えて、多くのDevOpsパイプラインには、構成管理用のツールとプロセスが含まれます(例: AnsibleまたはChef)と、プロアクティブな監視と問題修復のためのオブザーバビリティソリューション。
繰り返しになりますが、従来のモデルセキュリティは必ずしも重視されていないことがわかります。 セキュリティのシフトレフトとDevSecOpsがそれを変えようとしています。
セキュリティをシフトレフトするということは、開発サイクルのできるだけ早い段階でセキュリティを統合することを意味します。DevSecOps は、セキュリティを DevOps プラクティスに統合することです。 セキュリティは全員の責任となり、CI/CD パイプラインには最初から組み込まれています。
従来のDevOpsと同様に、DevSecOpsに関しては、特定のツールよりも文化とマインドセットが重要です。 しかし、DevOpsとともに「DevOpsツール」が人気を博したように、チームがCI/CDパイプラインにセキュリティを効果的に実装するのに役立つDevSecOpsツールがあります。
ここでは、セキュリティがCI/CDパイプラインに統合され、DevSecOpsツールが使用される一般的なユースケースをいくつか見てみましょう。
アプリケーションセキュリティは、SQLインジェクション、クロスサイトスクリプティング(XSS)、既知の脆弱性を持つソフトウェアコンポーネント、安全でない構成など、最新のWebアプリケーションに共通する脅威を扱います。CI/CDパイプラインでこれらの問題に効果的に対処するには、SAST(静的アプリケーション・セキュリティ・テスト)などのツールやプラクティスを使用して最初からセキュリティを統合し、セキュリティ評価を実施し、ゼロトラスト・ネットワーク・セキュリティ・ポリシーを採用・実施する必要があります。
コンテナ化は今日のアプリケーションデリバリーの標準であり、Dockerのようなコンテナランタイムは独自のセキュリティ上の課題を生み出します。 ラベルの誤用、ポイズニングされたコンテナ、カーネルのエクスプロイト、コンテナのブレイクアウトなどは、懸念事項のほんの一部に過ぎません。 コンテナや Kubernetes などのコンテナオーケストレーションツールで設計されたセキュリティ評価とリアルタイム監視は、コンテナの安全性を確保するのに大いに役立ちます。
AWS インフラストラクチャを効果的に使用すると、スケーラブルで信頼性の高いアプリケーションを構築するための最も信頼性の高い方法の 1 つになります。 しかし、 AWSパイプラインのセキュリティのためにチームが考慮しなければならない攻撃対象領域はたくさんあります。 たとえば、Web アプリと API の保護はエンドポイントのセキュリティを維持するのに役立ち、適切に構成された Identity and Access Management (IAM) ポリシーは脅威の軽減に役立ちます。
AWSと同様に、Azureのクラウドインフラストラクチャは、分散アプリケーションの開発において大きなメリットがあります。 また、強力なセキュリティ体制を維持するために対処しなければならない同様のセキュリティ上の課題も多数あります。 たとえば、可視性、ユーザー分析、侵入検知は、 Azure パブリック クラウドでの悪意のある動作を迅速に特定して軽減するのに役立ちます。
AWS、Azure、GCP、マルチクラウド環境のいずれにデプロイする場合でも、適切なツールは、セキュリティをCI/CDパイプラインに統合するのに大いに役立ちます。 CloudGuardは、最新のアプリケーションデリバリのニーズを満たすために構築されており、CI/CDパイプラインにシームレスに統合して、次のセキュリティ上のメリットを提供できます。
さらに詳しく知りたい方は、 今すぐ無料のCloudGuardデモにサインアップしてください。