依存関係リスト
依存関係リストを使うと、プロジェクトやグループの依存関係や、既知の脆弱性を含む依存関係の主要な詳細をレビューできます。これは、既存および新規の発見を含む、プロジェクト内の依存関係のコレクションです。
概要については、「プロジェクトの依存関係」を参照してください。
依存関係リストを表示するには、プロジェクトまたはグループに移動し、[セキュリティ] > [依存関係リスト]を選択します。
この情報は、ソフトウェア部品表、SBOM、または BOM と呼ばれることもあります。
前提条件
プロジェクトの依存関係を表示するには、以下の要件を満たしていることを確認してください:
- プロジェクトにDependency ScanningまたはContainer ScanningCI ジョブが設定されている必要があります。
- あなたのプロジェクトは、Gemnasium がサポートする言語とパッケージマネージャの少なくとも一つを使用しています。
- 成功したパイプラインがデフォルトのブランチで実行されました。アプリケーションセキュリティジョブの失敗を許可するデフォルトの動作を変更しないでください。
プロジェクトの依存関係の表示
GitLab は依存関係を以下の情報で表示します:
項目 | 説明 |
---|---|
コンポーネント | 依存関係の名前とバージョン。 |
パッケージャ | 依存関係のインストールに使用されるパッケージャ。 |
設置場所 | システム依存の場合、スキャンされたイメージが表示されます。アプリケーションの依存関係については、依存関係を宣言したプロジェクト内のパッケージャ固有のロックファイルへのリンクが表示されます。また、トップレベルの依存関係がある場合は、その依存関係パスも表示されます。 |
ライセンス | 依存関係のあるソフトウェアのライセンスへのリンクです。 |
表示された依存関係は、既知の脆弱性がある場合、深刻度順にソートされます。名前順やインストールしたパッケージャ順で並べ替えることもできます。
脆弱性
依存関係に既知の脆弱性がある場合は、依存関係の名前の横にある矢印または既知の脆弱性の数を示すバッジ を選択して、脆弱性を表示します。各脆弱性の下には、深刻度と説明が表示されます。脆弱性の詳細を表示するには、脆弱性の説明を選択します。脆弱性の詳細ページが開きます。
依存パス
依存関係リストには、依存関係と、依存関係が接続されているトップレベル依存関係の間のパスが表示されます。一時的な依存関係をトップレベルの依存関係に接続するパスはたくさんありますが、ユーザーインターフェイスには最短パスの 1 つだけが表示されます。
依存パスは以下のパッケージマネージャでサポートされています:
ライセンス
GitLab 12.3 で導入されました。
Dependency ScanningCI ジョブが設定されている場合、検出されたライセンスはこのページに表示されます。
グループの依存関係の表示
フラグ: セルフマネジメントのGitLabとGitLab.comでは、この機能はデフォルトで無効になっています。この機能を表示するには、管理者がgroup_level_dependencies
という機能フラグを有効にします。
GitLab は依存関係を以下の情報で表示します:
項目 | 説明 |
---|---|
コンポーネント | 依存関係の名前とバージョン。 |
パッケージャ | 依存関係のインストールに使用されるパッケージャ。 |
設置場所 | オペレーティングシステムの依存関係については、スキャンされたイメージが表示されます。アプリケーションの依存関係については、依存関係を宣言したプロジェクト内のパッケージャ固有のロックファイルへのリンクが表示されます。また、トップレベルの依存関係がある場合は、その依存関係パスも表示されます。複数の場所がある場合は、場所の合計数が表示されます。 |
プロジェクト | 依存関係に関連するプロジェクトへのリンクです。複数のプロジェクトがある場合は、プロジェクトの合計数が表示されます。 |
表示される依存関係は、最初はパッケージャ別にソートされています。名前でソートすることもできます。
依存関係リストのダウンロード
依存関係の完全なリストとその詳細をJSON
形式でダウンロードできます。
UIでは
Exporterボタンを選択すると、グループやプロジェクトの依存関係リストとその詳細を JSON 形式でダウンロードできます。依存関係リストには、デフォルトブランチで最後に実行されたパイプラインの結果のみが表示されます。
API の使用
APIを使ってプロジェクトの依存関係リストをダウンロードすることができます。これはGemnasium ファミリーのアナライザによって識別された依存関係のみを提供し、GitLab の他の依存関係アナライザは提供しないことに注意してください。