Continuous Delivery による DevSecOps
DevSecOps はアジャイルを進化させたもので、 DevOps,、ソフトウェアデリバリライフサイクルのできるだけ早い段階で、安全な開発のベストプラクティスを統合する。 この手法によって、セキュリティーの問題が実動システムにまで到達して企業が監査に失格することを防止できます。
DevSecOpsソフトウェアの開発と運用のライフサイクルにセキュリティー・プラクティスを統合する方法論。 この組み合わせの目的は、開発速度とセキュリティーのバランスに優先順位を付けることにあります。 には、継続的インテグレーションと継続的デリバリーのプロセスの一環として、セキュリ ティとコンプライアンスの管理を自動化することが求められる。 履歴に含まれているすべての変更が、必要なコントロールを満たしていることを監査員に示すために、それらのコントロールのエビデンスも収集します。
金融サービス業界の要件に合わせ、 Continuous Delivery、 NIST構成管理コントロールの参照実装をサービスとして提供します。 テンプレートを使用することで、このサービスはほんの数クリックで構成できます。
DevSecOpsは、'Continuous Delivery'(Git Repos and Issue Tracking、Tekton Pipelines、'DevOps Insights、Code Risk Analyzer)、'Secrets Manager、'Key Protect、'Cloud Object Storage、'Container Registry、'Vulnerability Advisorを使用する。 DevSecOpsは、SonarQube,Gosec、OWASP Zap(ダイナミック・スキャン)、任意のユニット・テスト・フレームワーク、GPG署名などの一般的なスキャン・ツールもすぐに使用できる。 また、外部の Git プロバイダーや成果物ストアなどの追加のツールも使用することができます。 DevSecOps は、具体的にはプライベート・パイプライン・ワーカーを使用することで、ハイブリッド・デプロイメントをサポートします。また、Satellite Config や ArgoCD などの他のデプロイメント・ツールと連携することができます。
DevSecOps の仕組みは?
アジャイル と DevOps は、自動化を実現し、開発の速度、ソフトウェアの品質、デリバリー・プロセスの一貫性と信頼性を向上させると同時に、ヒューマン・エラーが発生する可能性を取り除きます。 DevSecOps は、DevOps のプロセスに、セキュリティーとコンプライアンスのための一連のコントロールを組み込みます。 この機能により、組織は、強固なセキュリティ態勢と継続的な監査対応状態を維持しながら、迅速かつ頻繁にサービスを提供することができる。
アジャイル や DevOps と同様に、DevSecOps も文化に変化をもたらし、開発者、運用部門、セキュリティーとコンプライアンスの担当者を隔てていた従来のバリアが取り払われます。 開発チームは、開発したソフトウェアのセキュリティーの評価を外部チームに任せるのではなく (大抵は開発サイクルの遅い段階で行われるので、脆弱性が検出された場合の影響は大きく、修復コストも高くなります)、これまでよりセキュリティーを自分達の責任として捉えるようになります。 サイロ化されたセキュリティー・チームを配備する従来のモデルでは、規模を拡大できないので、クラウドネイティブの DevOps 領域の開発プロジェクトのニーズを満たせません。 DevSecOps では、セキュリティー・チームの目的を、サポート、アドバイス、およびガバナンスの役割以上のものに進化させることができます。
なぜ DevSecOps?
DevSecOps を使用すると、開発者は干渉を最小限に抑えながら更新を頻繁にデリバリーし続けることができます。 自動化されたセキュリティー・スキャンとコントロールが DevOps パイプラインに組み込まれると、変更管理プロセスにはエビデンスのある信頼性が提供されます。 また、この組み込みによって、すべての安全基準が満たされ、かつ特定の検査に合格した場合には、実稼働環境への新規デプロイメントを自動的に承認することもサポートされます。 セキュリティーとコンプライアンスを開発とデプロイメントのプロセスに早い段階で導入することで、ソフトウェアが実稼働環境に到達する前に問題を早く検出して、コストとリスクを削減できます。 このアプローチでは、開発の初期段階でセキュリティへの配慮を統合する。 また、すべての組織でセキュアなベスト・プラクティスが訓練に含まれていたとしても、開発者にセキュリティー・レベルの深い専門知識が不足していることがあります。 DevSecOps を適用し、提供ライフサイクルの早い段階でセキュリティを統合することで、既知の脆弱性を素朴に本番環境にリリースするリスクを低減する。
組織間での標準化
異種のオファリングやコンポーネントを開発する複数の独立したチームで、継続的統合と継続的デリバリーに同じ標準プロセスを使用することで、組織は非常に大きなメリットを得ることができます。 それらのメリットには、一貫性やスケールによる経済性などがあります。 コンプライアンスについて評価できるように装備された規範的な参照用パイプライン一式を組織全体ですべてのコンポーネントに使用すれば、開発者が自動化ソリューションの開発に費やす時間が短くなるので、機能の開発に専念できるようになります。 開発リーダーとセキュリティー担当者は、セキュアで準拠したソフトウェアにするために必要なコントロールが適用されていることに自信を持ち、監査に使用できるエビデンスを提供することができます。 コンポーネントやオファリングごとに各チームが独自のコンプライアンス実装方式を使用するのではなく、1 つの標準の実装方式が使用されるので、組織内のセキュリティー監査を簡素化できます。
DevSecOps?組み込む準備ができている DevSecOpsのベスト・プラクティスを使ってセキュアなアプリをデプロイ するためのチュートリアル・シリーズをご覧ください。 また、DevSecOpsのメリットや関連 ソリューションについても詳しくご紹介しています。