code scanning の既定のセットアップでは、Organization 全体のリポジトリ内のコードをすばやくセキュリティで保護できます。 詳しくは、「コード スキャンのセットアップの種類について」をご覧ください。
既定のセットアップに適していないリポジトリの場合は、リポジトリ レベルで、またはスクリプトを使用して組織レベルで高度なセットアップを構成できます。
メモ
Organization の設定ページを使用して organization 内のすべてのリポジトリの既定のセットアップを構成すると、既定のセットアップの既存の構成はオーバーライド されません。 ただし、セキュリティの概要を使用して Organization 内のリポジトリのサブセットに対して既定のセットアップを構成すると、それらのリポジトリの既定のセットアップの既存の構成がオーバーライド_されます_。
[前提条件]
リポジトリは、既定のセットアップの対象となるには、次のすべての条件を満たす必要があります。
- code scanning の詳細設定がまだ有効になっていません。
- GitHub Actions が有効になっています。
- GitHub Advanced Security が有効になっている。
Organization 内のすべての対象リポジトリの既定のセットアップの構成
organization の設定の [Code security and analysis] ページで、organization 内のすべての対象リポジトリに対して既定のセットアップを有効にすることができます。
-
GitHub の右上隅にあるプロフィール画像をクリックしてから、[ Your organizations] をクリックします。
-
組織をクリックして選択します。
-
Organization 名の下で、[ Settings] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
![組織のプロファイルのタブのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で囲まれています。](/assets/cb-49309/images/help/discussions/org-settings-global-nav-update.png)
-
サイドバーの [Security] セクションで、[ Code security and analysis] をクリックします。
-
"Code scanning" の横にある [すべて有効にする] をクリックします。
-
[code scanning の既定のセットアップを有効にする] ダイアログ ボックスの [クエリ スイート] セクションで、既定のセットアップの構成が実行されるクエリ スイートを選択します。 詳しくは、「CodeQL クエリ セット」をご覧ください。
-
既定のセットアップの構成を有効にするには、[対象となるリポジトリの有効化] をクリックします。
-
必要に応じて、既定のセットアップを有効にするときに organization 全体で "Extended" クエリ スイートを推奨するには、[既定のセットアップを有効にするリポジトリの拡張クエリ スイートを推奨] を選びます。
メモ
- すべてのリポジトリで CodeQL code scanning を無効にした場合、この変更は Organization のセキュリティの概要で示されるカバレッジ情報に反映されません。 リポジトリでは引き続き、この [セキュリティ カバレッジ] ビューでcode scanningが有効になっているように見えます。
- Organization 内のすべての対象リポジトリに対して code scanning を有効にした場合、既存の code scanning 構成はオーバーライドされません。 特定のリポジトリに対してさまざまな設定を使って既定のセットアップを構成する方法については、「コード スキャンの既定セットアップの構成」を参照してください。
- Organization 内のすべての適格なリポジトリに対して既定のセットアップを有効にすると、CodeQL でサポートされている言語のない対象リポジトリが含まれます。 後で CodeQL でサポートされている言語がこれらのリポジトリのいずれかに追加された場合、既定のセットアップでは、そのリポジトリのスキャンがスタートし、GitHub Actions 分が使用されます。
既定のセットアップでの CodeQL カバレッジの拡張
organization のセキュリティ設定ページで、organization 内のすべての対象リポジトリに対して、モデル パックを使用して既定の適用範囲を拡張できます。 詳しくは、「既定設定の構成を編集する」をご覧ください。
Organization 内のリポジトリのサブセットの既定セットアップを構成する
Organization のセキュリティの概要を通じて、既定のセットアップの対象となるリポジトリを見つけ、それらの各リポジトリで同時に既定のセットアップを有効にすることができます。
既定のセットアップの対象となるリポジトリの検索
-
GitHub で、organization のメイン ページに移動します。1. 組織名の下の [ Security ] タブをクリックします。1. サイドバーの [Coverage] をクリックして、[Security coverage] ビューを表示します。
![[セキュリティ カバレッジ] ビューのスクリーンショット。](/assets/cb-172149/images/help/security-overview/security-coverage-view-multi-repo.png)
-
検索バーに、次のいずれかのクエリを入力します。
`code-scanning-default-setup:eligible is:public` では、既定のセットアップに適した言語があり、一般に公開されているため対象となるリポジトリが示されます。-
code-scanning-default-setup:eligible advanced-security:enabledでは、既定のセットアップに適した言語があり、GitHub Advanced Security が有効になっているため対象となるプライベートまたは内部リポジトリが示されます。`code-scanning-default-setup:eligible is:private,internal advanced-security:not-enabled` では、既定のセットアップに適した言語はあるものの、GitHub Advanced Security が有効になっていないプライベートまたは内部リポジトリが示されます。 これらのリポジトリに対して GitHub Advanced Security を有効にすると、既定のセットアップに追加することもできます。
表示されているすべてのリポジトリまたはそれらのサブセットを選び、それらすべてに対して code scanning の既定のセットアップを同時に有効または無効にできます。 詳細については、「Organization 内の複数のリポジトリに対する大規模な既定のセットアップの構成」の手順 5 を参照してください。
Organization 内の複数のリポジトリの既定セットアップを大規模に構成する
-
GitHub で、organization のメイン ページに移動します。1. 組織名の下の [ Security ] タブをクリックします。1. サイドバーの [Coverage] をクリックして、[Security coverage] ビューを表示します。
![[セキュリティ カバレッジ] ビューのスクリーンショット。](/assets/cb-172149/images/help/security-overview/security-coverage-view-multi-repo.png)
-
検索バーを使い、名前またはセキュリティ機能の有効化状態に基づいて、[セキュリティ カバレッジ] ビューに表示されるリポジトリを絞り込むことができます。 たとえば、既定のセットアップの対象であり、現在既定のセットアップが有効になっていないリポジトリをフィルター処理するには、
code-scanning-default-setup:eligibleを検索します。 -
リポジトリの一覧で、code scanning を有効にする各リポジトリを選択します。
- ページ上のすべてのリポジトリに対する code scanning の有効化を確認するには、[NUMBER 個がアクティブ] の隣にあるチェックボックスを選択してください。
- 現在の検索に一致するすべてのリポジトリに対して code scanning を有効にするには、[NUMBER 個がアクティブ] の横にあるチェック ボックスをオンにしてから、[NUMBER 個のリポジトリをすべて選択] をクリックします。
-
**[NUMBER 個選択済み]** の横にある **[セキュリティ設定]** をクリックします。 -
サイド パネルの [CodeQL の既定のセットアップ] セクションで、[変更なし] を選び、[有効] をクリックしてください。
-
選択したリポジトリに対する code scanning の有効化を確認するには、[変更の適用 NUMBER] をクリックします。 または、code scanning 有効化のリポジトリをさらに選択または選択解除するには、[] をクリックして、変更を適用せずにパネルを閉じます。
メモ
- セキュリティの概要を使用してOrganization 内の複数のリポジトリに対して code scanning を有効にすると、選択したリポジトリの既存の code scanning 構成 (以前のクエリ スイートの選択や詳細設定のワークフローを含む) がオーバーライドされます。
- CodeQL でサポートされている言語を含まない対象リポジトリに対して、既定のセットアップを有効にすることができます。 後で CodeQL でサポートされている言語がこれらのリポジトリのいずれかに追加された場合、既定のセットアップでは、そのリポジトリのスキャンがスタートし、GitHub Actions 分が使用されます。
![サイド パネルが開いている [セキュリティ カバレッジ] ビューのスクリーンショット。 [変更の適用] ボタンが濃いオレンジ色の枠線で強調されています。](/assets/cb-235051/images/help/security-overview/security-coverage-view-multi-repo-side-panel.png)
Enterprise ポリシーのために code scanning を有効にできない場合でも、[セキュリティ カバレッジ] ビューで影響を受けるリポジトリを表示して、 [セキュリティ設定] ボタンからサイド パネルにアクセスできます。 ただし、選択したリポジトリに対して code scanning を有効にできないことを示すメッセージがサイド パネルに表示されます。 Enterprise ポリシーについて詳しくは、「エンタープライズのコード セキュリティと分析のためのポリシーの適用」をご覧ください。
組織内のすべてのリポジトリのマージ保護の構成
ルールセットを使用すると、次のいずれかの条件が満たされたときにプル要求がマージされないようにできます。
- 必要なツールは、ルール セットで定義されている重大度の code scanning アラートを検索します。
- 必要なツールの分析はまだ進行中です。
- リポジトリに必要なツールが構成されていません。
詳しくは、「コード スキャンのマージ保護を設定します」をご覧ください。 ルールセットの一般情報については、「AUTOTITLE」を参照してください。