オープンソースソフトウェアの台頭により、共同開発が増えていますが、課題がないわけではありません。 パブリック コンテナー イメージは、事前構築済みコンポーネントの膨大なライブラリへのアクセスと利便性を提供しますが、制御の欠如と潜在的な脆弱性により、CI/CD パイプラインにセキュリティと信頼性のリスクが生じる可能性があります。
このブログ記事では、これらのリスクを軽減し、安全で信頼性の高いソフトウェア配信プロセスを維持するためにチームが実装できるベストプラクティスについて詳しく説明します。 これらのガイドラインに従うことで、開発ワークフローを保護しながら、オープンソースソフトウェアの利点を活用できます。
1. パブリックコンテナのローカルコピーを保存する
リスクを最小限に抑え、セキュリティと信頼性を向上させるには、可能な限りパブリック コンテナー イメージのローカル コピーを保存することを検討してください。 Open Containers Initiative は、パブリック コンテンツの利用に関するガイドラインを提供しており、詳細については、こちらにアクセスしてください。
2. Docker Hub にアクセスするときに認証を使用する
安全で信頼性の高い CI/CD パイプラインを実現するには、匿名アクセスを使用するのではなく、 Docker Hub で認証することをお勧めします。 匿名アクセスはセキュリティの脆弱性にさらされ、 レート制限に達するリスクが高まり、パイプラインのパフォーマンスが低下します。
具体的な認証方法は、使用する CI / CD インフラストラクチャと Google Cloud サービスによって異なります。 幸いなことに、Docker Hubとの安全で効率的な対話を保証するために、いくつかのオプションを利用できます。
3. Artifact Registryリモートリポジトリを使用する
ビルドプロセスでDocker Hubリポジトリを直接参照する代わりに、安全で効率的なアクセスのために Artifact Registryリモートリポジトリ を選択します。 このアプローチでは、Docker Hubのアクセストークンを活用して、脆弱性のリスクを最小限に抑え、シームレスなワークフローを促進します。
このセットアップの構成に関する詳細な手順については、アーティファクト・レジストリのドキュメント「 Docker Hubへのリモート・リポジトリ認証の構成」を参照してください。
4. Google Cloud Build を使用して Docker イメージを操作する
Google Cloud Build は、ビルド ステップ内で Docker Hub イメージをシームレスにプルするための堅牢な認証メカニズムを提供します。 これらのメカニズムは、コンテナー イメージが Docker Hub でホストされている外部依存関係に依存している場合に不可欠です。 これらの機能を実装することで、CI/CD パイプラインを合理化しながら、必要なリソースへの安全で信頼性の高いアクセスを確保できます。
上記のベストプラクティスを実装すると、CI/CDパイプラインに大きなメリットがあります。 セキュリティ体制の強化と信頼性リスクの低減を実現し、スムーズで効率的なソフトウェア配信を実現します。 さらに、開発環境に堅牢な認証制御を確立することで、本番環境で後から発生する可能性のある潜在的な障害を防ぐことができます。 その結果、プロセスが企業のセキュリティ基準に準拠しているか、それを上回っていることを確信でき、開発基盤がさらに強固になります。
さらに詳しく
これらの手順の実装に役立つ機能の詳細については、次の製品ページを参照してください。