セキュリティおよび分析設定の管理について
GitHub は、Organization のリポジトリを保護するのに役立つ場合があります。 Organization でメンバーが作成する既存または新規のリポジトリすべてについて、セキュリティおよび分析機能を管理できます。 GitHub Advanced Securityのライセンス付きでGitHub Enterprise Cloudを使用するOrganizationは、それらの機能へのアクセスも管理できます。 詳細については、GitHub Enterprise Cloud ドキュメントを参照してください。
注: パブリックリポジトリにデフォルトで有効化されているセキュリティ及び分析の機能の中には、無効化できないものがあります。
セキュリティと分析の設定を表示する
-
GitHub.com の右上隅にあるプロファイル写真をクリックし、 [自分の Organization] をクリックします。
2. 組織の隣の [設定] をクリックします。 -
サイドバーの [セキュリティ] セクションで、 [コードのセキュリティと分析] をクリックします。
表示されるページでは、Organization 内のリポジトリのすべてのセキュリティおよび分析機能を有効化または無効化にできます。
既存のすべてのリポジトリの機能を有効または無効にする
すべてのリポジトリの機能を有効化または無効化できます。 変更が Organization 内のリポジトリに与える影響は、リポジトリの可視性によって決まります。
- プライベート脆弱性レポート - 変更はパブリック リポジトリにのみ影響します。
- 依存関係グラフ - この機能はパブリック リポジトリに対して常に有効になっているため、変更はプライベート リポジトリにのみ影響します。
- Dependabot alerts - 変更はすべてのリポジトリに影響します。
- Dependabot security updates - 変更はすべてのリポジトリに影響します。
- Secret scanning - 変更は、パブリック リポジトリと、これらのリポジトリが依存する可能性のあるパブリック npm パッケージに影響します。このオプションは、ユーザーに対するシークレット スキャン アラート が有効かどうかを制御します。 パートナーに対するシークレット スキャン アラート は常にすべてのパブリック リポジトリ上で実行されます。
- Code scanning - 変更はパブリック リポジトリに影響します。対象となるリポジトリについては、「CodeQL を使用した大規模なコード スキャンの構成」を参照してください。既定のセットアップの対象ではないリポジトリの場合は、リポジトリ レベルで詳細セットアップを構成できます。 詳しくは、「リポジトリの code scanning を構成する」を参照してください。
-
組織のセキュリティと分析の設定に移動します。 詳細については、「セキュリティと分析の設定を表示する」を参照してください。
-
[コードのセキュリティと分析] の下で、機能の右にある [すべて無効] または [すべて有効] をクリックして構成ダイアログ ボックスを表示します。 がない場合です。
-
ダイアログ ボックスの情報を確認します。
-
必要に応じて、機能を有効にする場合は、 [新しいプライベート リポジトリに対して既定で有効にする] をオンにします。
-
変更を行う準備ができたら、 [機能の無効化] または [機能の有効化] をクリックして、Organization 内のすべてのリポジトリの機能を無効または有効にします。
注: Organization 内の対象となるリポジトリに対してcode scanningの既定のセットアップを有効および無効にする機能は、現在ベータ版であり、変更される可能性があります。 ベータ版のリリース中に、すべてのリポジトリで CodeQL code scanningを無効にした場合、この変更は Organization のセキュリティの概要に示されているカバレッジ情報には反映されません。 リポジトリでは引き続き、このビューでcode scanningが有効になっているように見えます。
既存のリポジトリで1つ以上のセキュリティ及び分析機能を有効化すると、数分のうちにGitHub上に結果が表示されます。
- 既存のすべてのリポジトリは、選択された設定を持ちます。
- 新しいリポジトリのチェックボックスをオンにした場合、新しいリポジトリは選択した構成に従います。
- 関連するサービスに適用するマニフェストファイルをスキャンするために権限を使用します。
- 有効化すると、依存関係グラフに依存関係情報が表示されます。
- 有効化すると、GitHub により、脆弱な依存関係またはマルウェアに対して Dependabot alertsが生成されます。
- 有効化すると、Dependabot セキュリティ更新プログラムは、Dependabot alerts がトリガーされたときに、脆弱な依存関係をアップグレードするための pull request を作成します。
新しいリポジトリが追加されたときに機能を自動的に有効化または無効化する
- 組織のセキュリティと分析の設定に移動します。 詳細については、「セキュリティと分析の設定を表示する」を参照してください。
- [コードのセキュリティと分析] で機能を見つけて、組織の新しいリポジトリまたはすべての新しいプライベート リポジトリに対して既定でこの機能を有効または無効にします。
Dependabot のプライベート依存関係へのアクセスを許可する
Dependabot は、プロジェクト内の古い依存関係参照をチェックし、それらを更新するためのプルリクエストを自動的に生成できます。 これを行うには、Dependabot がすべてのターゲット依存関係ファイルにアクセスできる必要があります。 通常、1 つ以上の依存関係にアクセスできない場合、バージョン更新は失敗します。 詳しくは、「GitHub Dependabot のバージョンアップデートについて」を参照してください。
デフォルトでは、Dependabot はプライベートリポジトリまたはプライベートパッケージレジストリにある依存関係を更新できません。 ただし、依存関係が、その依存関係を使用するプロジェクトと同じ Organization 内のプライベート GitHub リポジトリにある場合は、ホストリポジトリへのアクセスを許可することで、Dependabot がバージョンを正常に更新できるようにすることができます。
コードがプライベートレジストリ内のパッケージに依存している場合は、リポジトリレベルでこれを設定することにより、Dependabot がこれらの依存関係のバージョンを更新できるようにすることができます。 これを行うには、リポジトリの dependabot.yml ファイルに認証の詳細を追加します。 詳しくは、「dependabot.yml ファイルの構成オプション」を参照してください。
Dependabot がプライベート GitHub リポジトリにアクセスできるようにするには:
-
組織のセキュリティと分析の設定に移動します。 詳細については、「セキュリティと分析の設定を表示する」を参照してください。
-
[Dependabot にプライベート リポジトリへのアクセスを許可する] で、 [プライベート リポジトリの追加] または [内部およびプライベート リポジトリの追加] をクリックして、リポジトリの検索フィールドを表示します。
-
Dependabot アクセス権を付与するリポジトリの名前の入力を開始します。
-
Organization 内の一致するリポジトリのリストが表示され、アクセスを許可するリポジトリをクリックすると、許可リストにリポジトリが追加されます。
-
あるいは、リストからリポジトリを差k除するには、リポジトリの右のをクリックします。