依存関係の確認について
依存関係レビューを使うと、すべてのPull Reqeustにおける以下の変更による依存関係の変化とセキュリティについての影響を理解しやすくなります。pull request の [Files Changed](変更されたファイル) タブ上のリッチ diff で依存関係の変更をわかりやすく視覚化できます。 依存関係レビューは、以下のことを知らせます:
- リリース日と合わせて、追加、削除、更新された依存関係
- これらのコンポーネントを使うプロジェクトの数
- これらの依存関係に関する脆弱性のデータ
ライセンス チェック、pull request のブロック、CI/CD インテグレーションなどの一部の追加機能は、依存関係レビュー アクションを行うと利用できます。
ライセンスに GitHub Advanced Security が含まれているかどうかを確認する
エンタープライズ設定を確認することで、エンタープライズに GitHub Advanced Security ライセンスがあるかどうかを確認できます。 詳しくは、「自社で GitHub Advanced Security を有効にする」をご覧ください。
依存関係レビューの前提条件
-
GitHub Advanced Security のライセンス (「GitHub Advanced Security の課金について」を参照してください)。
-
インスタンスに対して有効になっている依存関係グラフ。 サイト管理者は、管理コンソールまたは管理シェルを使って依存関係グラフを有効にすることができます (「企業の依存関係グラフの有効化」を参照してください)。
-
GitHub Advisory Database から脆弱性をダウンロードして同期するために有効化された GitHub Connect。 これは通常、Dependabot のセットアップの一環として構成されます (「エンタープライズ向けの Dependabot の有効化」を参照してください)。
依存関係レビューを有効および無効にする
依存関係レビューを有効または無効にするには、インスタンスに対して依存関係グラフを有効または無効にする必要があります。
詳しくは、「企業の依存関係グラフの有効化」をご覧ください。
GitHub Actions を使って依存関係レビューを実行する
Note
依存関係レビュー アクション は現在 パブリック プレビュー にあり、変更される可能性があります。
依存関係レビュー アクションは、GitHub Enterprise Server のインストールに含まれています。 これは、GitHub Advanced Security と依存関係グラフが有効になっているすべてのリポジトリで使うことができます。
依存関係レビュー アクション では、pull request で依存関係の変更をスキャンし、新しい依存関係に既知の脆弱性がある場合にエラーを発生させます。 このアクションは、2 つのリビジョン間の依存関係を比較し、相違点を報告する API エンドポイントによってサポートされます。
アクションと API エンドポイントの詳細については、dependency-review-action
ドキュメントと「依存関係レビュー用の REST API エンドポイント」を参照してください。
ユーザーは、GitHub Actions ワークフローを使って、依存関係レビュー アクションを実行します。 GitHub Actions のランナーをまだセットアップしていない場合、ユーザーを有効にしてワークフローを実行するには、これを行う必要があります。 セルフホストランナーは、リポジトリ、Organization、または Enterprise アカウントレベルでプロビジョニングできます。 詳細については、「自己ホスト ランナーの概要」と「自己ホストランナーの追加」を参照してください。