V3: ビルド環境要件

管理目標

ソフトウェアビルドパイプラインはソースコードリポジトリ、パッケージリポジトリ、継続的インテグレーションおよびデリバリプロセス、テスト手順、およびこれらの機能を可能にするネットワークインフラストラクチャとサービスで構成されます。 パイプライン内のすべてのシステムは欠陥、障害、構成ミスがソフトウェアサプライチェーンを危殆化するエントリポイントを提供する可能性があります。 関連するシステムを堅牢化し、ベストプラクティスを実施することで、危殆化の可能性を低減します。

検証要件

#

説明

L1

L2

L3

3.1

アプリケーションは繰り返し可能なビルドを使用している

3.2

アプリケーションのビルド方法とビルドを繰り返すための手順に関するドキュメントが存在している

3.3

アプリケーションは継続的インテグレーションビルドパイプラインを使用している

3.4

アプリケーションビルドパイプラインではビルドを実行するジョブ以外でのビルドの変更を禁止している

3.5

アプリケーションビルドパイプラインではパッケージ管理設定の変更を禁止している

3.6

アプリケーションビルドパイプラインではジョブビルドスクリプトのコンテキスト外での任意のコードの実行を禁止している

3.7

アプリケーションビルドパイプラインではバージョン管理システムで保持されているソースコードのビルドのみを実行できる

3.8

アプリケーションビルドパイプラインではビルド中に DNS およびネットワーク設定の変更を禁止している

3.9

アプリケーションビルドパイプラインでは証明書トラストストアの変更を禁止している

3.10

アプリケーションビルドパイプラインでは認証を強制しておりデフォルトでは拒否している

3.11

アプリケーションビルドパイプラインでは認可を強制しておりデフォルトでは拒否している

3.12

アプリケーションビルドパイプラインではシステム設定の変更に対する関心の分離を必要としている

3.13

アプリケーションビルドパイプラインではすべてのシステム変更の検証可能な監査ログを保持している

3.14

アプリケーションビルドパイプラインではすべてのビルドジョブ変更の検証可能な監査ログを保持している

3.15

アプリケーションビルドパイプラインではスタック全体が更新、パッチ適用、使用のために再認定される保守頻度を必要としている

3.16

コンパイラ、バージョン管理クライアント、開発ユーティリティ、およびソフトウェア開発キットは改竄、トロイの木馬、または悪意のあるコードについて分析および監視されている

3.17

ソースやバイナリへのすべてのビルド時操作は既知であり明確に定義されている

3.18

すべてのファーストパーティおよびサードパーティコンポーネントのチェックサムはビルドごとにドキュメント化されている

3.19

すべてのコンポーネントのチェックサムはアクセス可能であり、それらのコンポーネントがパッケージ化または配布されるときはいつでも帯域外に配信されている

3.20

未使用の直接的および間接的コンポーネントが特定されている

3.21

未使用の直接的および間接的コンポーネントはアプリケーションから削除されている

Last updated

Was this helpful?