カタログ ステージの概要
内部使用のためのコンテナー イメージのカタログの構築は、コンテナーのサプライ チェーンの第 2 段階です。 Acquire ステージから特定の品質チェックを渡すコンテナー イメージは、内部レジストリでホストされます。 内部チームがエンタープライズ アプリケーションやサービスに必要な承認済みイメージを簡単に検出して使用できるように、コンテナー イメージをカタログ化することが不可欠です。 さらに、カタログ内のコンテナー イメージは、最新のセキュリティ要件を確実に満たすために、脆弱性とマルウェアを定期的に継続的にスキャンします。
Microsoft の Containers Secure Supply Chain (CSSC) フレームワークは、コンテナー イメージをカタログ化する必要性を特定し、コンテナー イメージをカタログで安全にホストするのに役立つ一連のベスト プラクティスとツールを提供します。 この記事では、CSSC フレームワークの Catalog ステージに使用できる目的、ベスト プラクティス、およびツールについて説明します。
背景
現在、企業ではさまざまな方法を使用してコンテナー イメージを管理しています。 エンジニアが使用可能なコンテナー イメージを検出し、企業内のセキュリティ体制とアクセス レベルの制限を理解することは困難です。 一部の企業では、エンジニアが使用可能なコンテナー イメージを検出できるように、レジストリの上に独自のポータルを構築しています。 さらに、一部の企業では、エンジニアが外部レジストリからコンテナー イメージを直接使用できないようにファイアウォールの制限とポリシーを適用しています。
CSSC フレームワークのカタログ ステージでは、セキュリティを確保するためにコンテナー イメージを検出および監視し続けるために実装する必要がある一連の手順とセキュリティ制御が推奨されます。
推奨される運用
内部チームは、可能な限り内部カタログのコンテナー イメージを使用することをお勧めします。 企業がこれを行えない場合は、コンテナー イメージのカタログに対して次のプラクティスをお勧めします。
- ゴールデン イメージをカタログ化して、社内チームがエンタープライズ アプリケーションとサービスに必要な承認済みイメージを簡単に検出して使用できるようにします。
- コンテナー イメージの脆弱性とマルウェアを継続的にスキャンし、レポートを生成し、レポートに署名して信頼性と整合性を確保します。
- カタログ イメージのライフサイクルを監視し、サポート対象外のイメージを廃止します。
コンテナー イメージのカタログのワークフロー
CSSC フレームワークでは、コンテナー イメージをカタログ化し、コンテナー イメージ、内部レジストリのセキュリティを確保し、内部使用のためにコンテナー イメージを受け入れるのに役立つ、次のワークフローを推奨します。 コンテナー イメージのカタログのワークフローでは、次の処理が行われます。
- 内部ステージング レジストリで品質チェックと関連するメタデータを渡すコンテナー イメージをホストします。
- コンテナー イメージをカタログ化して、社内チームがエンタープライズ アプリケーションとサービスに必要な承認済みイメージを簡単に検出して使用できるようにします。
- 脆弱性とマルウェアのスキャンを定期的にスケジュールし、脆弱性とマルウェアのレポートを生成します。
- 整合性を確保し、内部使用の承認の信頼されたスタンプを提供するために、エンタープライズ キーを使用してレポートに署名します。
- カタログ内のコンテナー イメージのライフサイクルを監視し、サポート対象外のイメージを廃止します。
カタログ ステージのセキュリティ目標
コンテナー イメージのカタログに対して明確に定義されたワークフローを使用すると、企業はセキュリティを強化し、コンテナーのサプライ チェーンの攻撃対象領域を減らすことができます。 CSSC フレームワークのカタログ ステージは、次のセキュリティ目標を満たすことを目的としています。
外部の依存関係により攻撃対象領域を減らす
コンテナー イメージが利用できない場合や見つけにくい場合、内部チームは外部レジストリから直接コンテナー イメージを使用することを選択する可能性があります。この場合、コンテナー イメージは悪意のあるコンテナー イメージなどの攻撃にさらされます。
このリスクに対処するために、CSSC フレームワークの Catalog ステージでは、内部チームがエンタープライズ アプリケーションとサービスに必要な承認済みイメージを簡単に検出して使用できるように、ゴールデン イメージをカタログ化することをお勧めします。 また、内部チームの使用状況に基づいて、Acquire ステージから画像を継続的に追加します。
セキュリティ上の欠陥が発生するリスクを最小限に抑える
カタログ内のコンテナー イメージが古くなったり、パッチが適用されなくなったりする可能性があります。これにより、セキュリティの脆弱性やマルウェアをエンタープライズ アプリケーションに導入する可能性のあるイメージを誤って使用するリスクが高まります。
このリスクに対処するために、CSSC フレームワークの Catalog ステージでは、コンテナー イメージの脆弱性とマルウェアを継続的にスキャンし、標準形式でレポートを生成することをお勧めします。 これにより、ソフトウェア サプライ チェーンの後続のステージで使用する前にレポートを検証できます。
推奨されるツール
Microsoft では、企業がカタログ ステージ ワークフローに推奨される手順を実装し、上記のセキュリティ目標に対処するのに役立つ一連のツールとサービスを提供しています。
コンテナー イメージをホストするためのサービス
Azure Container Registry (ACR) は、コンテナー イメージとその他のクラウドネイティブ成果物の配布をサポートする、マネージド OCI 準拠のレジストリです。 ACR は最新の OCI 仕様に準拠しており、サプライ チェーン成果物の格納に使用できます。
脆弱性スキャン用のツール
Microsoft Defender for Cloud は、コンテナー化されたワークロードのセキュリティを向上、監視、およびメインするためのクラウドネイティブ ソリューションです。 Microsoft Defender for Cloud には、Azure Container Registry に格納されているイメージの脆弱性評価と管理ツールが用意されています。
イメージの信頼性を確保するためのツール
公証人プロジェクト は、ソフトウェア成果物の署名と検証のための仕様とツールを開発する、Microsoft が支援する CNCF プロジェクトです。 公証プロジェクトの notation
ツールを使用して、コンテナー イメージやその他のクラウドネイティブ成果物にエンタープライズ キーを使用して署名できます。
次のステップ
コンテナー イメージを安全にビルドするためのビルド ステージの概要を参照してください。