Skip to main content

CodeQL クエリ スイート

CodeQL code scanning セットアップで使用するさまざまな組み込み CodeQL クエリ スイートから選ぶことができます。

この機能を使用できるユーザーについて

CodeQL は、次の種類のリポジトリで使用できます:

  • GitHub.com のパブリック リポジトリについては、「GitHub CodeQL の使用条件」を参照してください
  • GitHub Code Security が有効になっている GitHub Team または GitHub Enterprise Cloud 上の organization 所有のリポジトリ

クエリ スイートとは

クエリ スイートを使用すると、各クエリ ファイルへのパスを個別に指定せずに、複数のクエリを CodeQL に渡すことができます。 ファイル名、メタデータ プロパティ、ディスク上の場所、CodeQL パック内の場所に基づいてクエリを選択する方法が提供されます。

CodeQL 分析で頻繁に使用するクエリには、クエリ スイートを使用する必要があります。 GitHub で使用できる組み込みのクエリ スイートを使用することも、独自に作成することもできます。

組み込みの CodeQL クエリ スイート

組み込みの CodeQL クエリ スイートの defaultsecurity-extended は、GitHub によって作成および管理されます。 これらのクエリ スイートはどちらも、CodeQL がサポートしているすべての言語に対して、既定の設定で使用できます。

組織の所有者とセキュリティ マネージャーは、組織全体の既定のセットアップで使用するクエリ スイートを推奨できます。 詳しくは、「大規模なコード スキャンの既定のセットアップを構成する」をご覧ください。

各言語の各クエリ スイートに含まれるクエリの完全な一覧については、 CodeQL 分析のクエリ を参照してください。

          `default` クエリ スイート

* default クエリ スイートは、GitHub の CodeQL code scanningで既定で実行されるクエリのグループです。 * default クエリ スイートのクエリは非常に正確であり、誤検知のcode scanningの結果がほとんど返されません。 security-extended クエリ スイートと比較して、default スイートからは、低信頼のcode scanningの結果はほとんど返されません。

  • このクエリ スイートは、code scanningの既定の設定で使用できます。

          `security-extended` クエリ スイート

* security-extended クエリ スイートは、default クエリ スイート内のすべてのクエリと、精度と重大度がやや低い追加のクエリで構成されます。 * default クエリ スイートと比較して、security-extended スイートから、誤検知のcode scanningの結果が多く返される場合があります。

  • このクエリ スイートは、code scanning の既定のセットアップで使うことができ、GitHub の "拡張" クエリ スイートと呼ばれます。

カスタム クエリ スイート

カスタム クエリ スイートを使用するには、CodeQL code scanningの詳細設定を構成する必要があります。 詳しくは、「コード スキャンの詳細設定を構成する」をご覧ください。

クエリ スイートの定義は、拡張子が .qls の YAML ファイルに格納されます。 スイートの定義は一連の命令であり、各命令は、(通常は) 1 つのキーを持つ YAML マッピングです。 これらの命令は、クエリ スイートの定義に指定された順序で実行されます。 スイートの定義の命令がすべて実行されると、結果は、選択されたクエリのセットになります。 詳しくは、「CodeQL クエリ スイートの作成」をご覧ください。

詳細については、次を参照してください。

  •         [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/creating-codeql-query-suites)