Skip to main content
ドキュメントへの更新が頻繁に発行されており、このページの翻訳はまだ行われている場合があります。 最新の情報については、「英語のドキュメント」を参照してください。

依存関係の確認について

依存関係のレビューを使うと、安全でない依存関係を自分の環境に持ち込んでしまう前に捉え、ライセンス、依存物、依存関係の期間に関する情報を確認できます。

依存関係の確認は、GitHub Enterprise Server 内にある Organization 所有のリポジトリで利用できます。 この機能には、GitHub Advanced Security のライセンスが必要です。 詳細については、「GitHub Advanced Security について」を参照してください。

依存関係の確認について

依存関係レビューを使うと、すべてのPull Reqeustにおける以下の変更による依存関係の変化とセキュリティについての影響を理解しやすくなります。pull request の [Files Changed](変更されたファイル) タブ上のリッチ diff で依存関係の変更をわかりやすく視覚化できます。 依存関係レビューは、以下のことを知らせます:

  • リリース日と合わせて、追加、削除、更新された依存関係。
  • これらのコンポーネントを使うプロジェクトの数。
  • これらの依存関係に関する脆弱性のデータ。

プルリクエストがリポジトリのデフォルトブランチを対象とし、パッケージマニフェストまたはロックファイルへの変更が含まれている場合は、依存関係のレビューを表示して、何が変更されたかを確認できます。 依存関係のレビューには、ロックファイル内の間接的な依存関係への変更の詳細が含まれ、追加または更新された依存関係のいずれかに既知の脆弱性が含まれているかどうかが示されます。

時に、マニフェスト内の 1 つの依存関係のバージョンを更新して、プルリクエストを生成することがあります。 ただし、この直接依存関係の更新バージョンでも依存関係が更新されている場合は、プルリクエストに予想よりも多くの変更が加えられている可能性があります。 各マニフェストとロックファイルの依存関係のレビューにより、何が変更されたか、新しい依存関係バージョンのいずれかに既知の脆弱性が含まれているかどうかを簡単に確認できます。

プルリクエストで依存関係のレビューを確認し、脆弱性としてフラグが付けられている依存関係を変更することで、プロジェクトに脆弱性が追加されるのを防ぐことができます。 依存関係レビューのしくみについて詳しくは、「プルリクエストでの依存関係の変更の確認」を参照してください。

依存関係レビューの構成について詳しくは、「依存関係レビューの構成」を参照してください。

Dependabot alerts は、すでに依存関係にある脆弱性を検出しますが、あとで修正するよりも、潜在的な問題が持ち込まれることを回避する方がはるかに良いです。 Dependabot alerts の詳細については、「Dependabot alerts について」を参照してください。

依存関係のレビューは、依存関係グラフと同じ言語とパッケージ管理エコシステムをサポートしています。 詳細については、「依存関係グラフの概要」を参照してください。

GitHub Enterprise Server で利用できるサプライ チェーン機能の詳細については、「サプライ チェーンのセキュリティについて」を参照してください。

依存関係レビューを有効にする

依存関係グラフを有効にすると、依存関係レビューが使用できるようになります。 詳細については、「エンタープライズの依存関係グラフの有効化」を参照してください。

依存関係レビューの適用

このアクションは、GitHub Advanced Security が有効になっているすべてのリポジトリで使用できます。

エンタープライズ所有者とリポジトリへの管理者アクセス権を持つユーザーは、dependency review action をエンタープライズとリポジトリにそれぞれ追加できます。

リポジトリで dependency review action を使って、pull request に依存関係レビューを適用できます。 このアクションは、pull request のパッケージ バージョンの変更によって発生した依存関係の脆弱なバージョンをスキャンし、関連するセキュリティの脆弱性について警告します。 これにより、pull request で何が変更されているかをより正確に把握でき、リポジトリに脆弱性が追加されるのを防ぐことができます。 詳細については、「dependency-review-action」を参照してください。

依存関係レビュー アクションの例

既定では、脆弱性のあるパッケージが検出された場合、dependency review action チェックは失敗します。 リポジトリの所有者が依存関係レビューのチェックに合格することを要求している場合、チェックが失敗すると pull request のマージがブロックされます。 詳細については、「保護されたブランチについて」を参照してください。

このアクションでは、 Dependency Review REST API を使用して、ベース コミットとヘッド コミットの間での依存関係変更の差分が取得されます。 Dependency Review API を使用すると、リポジトリ上の 2 つのコミット間で、依存関係の変更の差分 (脆弱性データを含む) を取得できます。 詳細については、「依存関係のレビュー」を参照してください。

ニーズに合うように dependency review action を構成できます。 たとえば、アクションが失敗する重大度レベルを指定できます。 詳細については、依存関係レビューの構成に関するページを参照してください。