ソフトウェア サプライ チェーンを保護する

このドキュメントでは、主に、ソフトウェア サプライ チェーンのプロセスとシステム間でソフトウェアの保護をサポートするベスト プラクティスを中心に説明します。また、Google Cloud 上のいくつかのプラクティスの実装方法に関する情報も含まれています。

ソフトウェアのライフサイクル全体でソフトウェアを保護する場合や、ソフトウェア サプライ チェーンのセキュリティをサポートする基本的な開発手法の場合、ソフトウェアの保護についての追加の検討事項があります。例:

  • システムへの物理アクセスとリモート アクセスの制御。
  • 監査、モニタリング、フィードバックのメカニズムを実装して、脅威とコンプライアンス違反を迅速に特定して対処できるようにします。
  • 設計、入力検証、信頼できないシステムへの出力、データ処理、コード分析、暗号化などの基本的なコーディング方法。
  • このドキュメントで説明している手法以外の基本的な DevOps プラクティス(技術手法、チーム プロセス、組織文化など)。
  • 直接的な依存関係と推移的な依存関係に関するオープンソース ライセンスを含む、ソフトウェア ライセンス条項の遵守。

    一部のオープンソース ライセンスには、商用ソフトウェアにとって問題となる制限付きのライセンス条項が含まれています。特に、一部のライセンスでは、再利用するオープンソース ソフトウェアと同じライセンスでソースコードをリリースする必要があります。ソースコードを非公開にする場合は、使用するオープンソース ソフトウェアのライセンス条項を確認することが重要です。

  • 従業員にトレーニングを実施して、サイバーセキュリティの意識を高めます。情報セキュリティの専門家による調査「State of Cybersecurity 2021, Part 2」によると、ソーシャル エンジニアリングが最も一般的な攻撃タイプでした。調査回答者も、サイバーセキュリティのトレーニングと意識付けのプログラムが従業員の認知度にある程度のプラスの影響(46%)または強力にプラスの影響(32%)をもたらしたと報告しています。

これらのトピックの詳細については、以降のセクションのリソースをご覧ください。

Google Cloud でのセキュリティ

Google Cloud セキュリティ ベスト プラクティス センターのガイドの 1 つである、Google Cloud エンタープライズ基盤のブループリントで、組織構造、認証と承認、リソース階層、ネットワーク、ロギング、検出制御などの設定について学習します。

脆弱性と潜在的なリスクに関する一元化された情報は、次の Google Cloud サービスを使用して表示できます。

  • Security Command Center を使用して、Google Cloud 組織全体の脆弱性と脅威に関する情報を表示します。
  • Recommender を使用して、リスクの軽減に役立つ推奨事項など、サービスの使用状況に関する情報を取得します。たとえば、過剰な権限を持つ IAM プリンシパルや、放置された Google Cloud プロジェクトを特定できます。

Google Cloud のセキュリティの詳細については、Google Cloud ウェブサイトのセキュリティ セクションをご覧ください。

DevOps とソフトウェア開発手法

ソフトウェア デリバリーの迅速化と信頼性と安全性の高いソフトウェアに貢献する DevOps 手法の詳細については、DevOps の能力のドキュメントをご覧ください。

また、すべてのプログラミング言語に適用されるコードを設計、開発、テストするための基本的なプラクティスもあります。また、すべての依存関係について、ソフトウェアの配布方法とソフトウェア ライセンスの条件を評価する必要もあります。Linux Foundation は、次のトピックに関する無料のオンライン トレーニングを提供しています。

ポリシーの開発

ベスト プラクティスを段階的に実装する際は、組織のポリシーを文書化し、ポリシーの検証を開発、構築、デプロイのプロセスに組み込みます。たとえば、会社のポリシーに、Binary Authorization で実装するデプロイ条件が含まれている場合があります。