既定のセットアップ構成の編集について
既定のセットアップでコードの初回分析を実行した後、コードのセキュリティ ニーズをより適切に満たすために、構成の変更が必要になる場合があります。 既定のセットアップの既存の構成では、次の内容を編集できます。
- デフォルトのセットアップが分析する言語。
- クエリ スイートは分析中に実行されます。 使用可能なクエリ スイートの詳細については、「CodeQL クエリ スイート」を参照してください。
コードベースが、CodeQL に含まれている標準ライブラリで認識されないライブラリまたはフレームワークに依存している場合は、CodeQL モデル パックを使用して、デフォルトのセットアップで CodeQL カバレッジを拡張することもできます。 詳細については、「デフォルトのセットアップでの CodeQL モデル パックを使用した CodeQL カバレッジの拡張」を参照してください。
code scanning 構成のその他の要素を変更する必要がある場合は、高度なセットアップの構成を検討してください。 詳しくは、「コード スキャンの高度なセットアップの構成」を参照してください。
既定のセットアップの既存の構成をカスタマイズする
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
サイドバーの [セキュリティ] セクションで、 [コードのセキュリティと分析] をクリックします。
-
[Code scanning] セクションの [CodeQL 分析] 列で、[] を選択した後、 [CodeQL 構成を表示する] をクリックします。
-
[CodeQL 既定の構成] ウィンドウで、 [編集] をクリックします。
-
必要に応じて、[言語] セクションで、分析用の言語を選択または選択解除します。
-
必要に応じて、[スキャン設定] セクションの [クエリ スイート] 行で、コードに対して実行する別のクエリ スイートを選択します。
-
構成を更新し、新しい構成でコードの初期分析を実行するために、[変更の保存] をクリックします。 今後のすべての分析では、新しい構成が使用されます。
pull request チェック エラーの原因となるアラートの重大度を定義する
pull request で code scanning を有効にすると、チェックは、重大度 error
のアラートが 1 つまたは複数検出された場合、またはセキュリティの重大度critical
またはhigh
が検出された場合のみ失敗します。 重大度が低いアラートまたはセキュリティ重大度のアラートが検出された場合、チェックは成功します。 重要なコードベースの場合は、コード変更をマージする前にアラートを修正または無視するようにするために、アラートが検出された場合に code scanning チェックを失敗させることができます。 重大度レベルの詳細については、「アラートの重大度とセキュリティの重大度レベルについて」を参照してください。
-
GitHub で、リポジトリのメイン ページに移動します。
-
リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
サイドバーの [セキュリティ] セクションで、 [コードのセキュリティと分析] をクリックします。
-
"Code scanning"の下で、"チェックエラー"の右のドロップダウンメニューを使い、pull request のチェックの失敗を引き起こさせる重大度のレベルを選んでください。
デフォルトのセットアップで CodeQL モデル パックを使用して CodeQL カバレッジを拡張する
注: CodeQL モデル パックと CodeQL モデル エディターは現在 ベータ であり、変更される可能性があります。 モデル パックは Java/Kotlin 分析でサポートされます。
CodeQL に含まれている標準ライブラリで認識されないフレームワークとライブラリを使用する場合は、依存関係をモデル化し、code scanning 分析を拡張できます。 詳細については、CodeQL 用のドキュメント内のサポートされている言語とフレームワークを参照してください。
既定のセットアップでは、CodeQL モデル パックで追加の依存関係のモデルを定義する必要があります。 既定のセットアップのカバレッジを拡張するには、個々のリポジトリ用に CodeQL モデル パックを使用することも、組織内のすべてのリポジトリに対して大規模に行うこともできます。
CodeQL モデル パックおよび、独自のものを作成する方法について詳しくは、「CodeQL モデル エディターの使用」をご覧ください。
リポジトリのカバレッジの拡張
- リポジトリの
.github/codeql/extensions
ディレクトリに、分析に含めるライブラリやフレームワーク用の追加モデルを含むcodeql-pack.yml
ファイルおよび.yml
ファイルが含まれた、モデル パック ディレクトリをコピーします。 - モデル パックは自動的に検出され、code scanning 分析で使用されます。
- 後で高度なセットアップを使用するように構成を変更した場合、
.github/codeql/extensions
ディレクトリ内のすべてのモデル パックは引き続き認識され、使用されます。
GitHub Container registry に関連付けられた コンテナー レジストリに発行され、code scanning を実行するリポジトリにアクセスできる必要があります。 詳しくは、「コンテナレジストリの利用」を参照してください。
-
GitHub の右上隅で、プロフィール写真を選択し、 あなたの組織をクリックします。
-
組織名の下で、 [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。
-
[コードのセキュリティと分析] をクリックします。
-
[Code scanning] セクションを見つけます。
-
[CodeQL 分析の拡張] の横にある、[構成] をクリックします。
-
使用するパブリッシュ済みモデル パックへの参照を 1 行に 1 つずつ入力し、[保存] をクリックします。
-
既定のセットアップが有効になっている組織内のリポジトリで code scanning が実行されると、モデル パックが自動的に検出され、使用されます。