Skip to main content

About CodeQL code scanning in your CI system

You can analyze your code with CodeQL in a third-party continuous integration system and upload the results to your GitHub Enterprise Server instance. The resulting code scanning alerts are shown alongside any alerts generated within GitHub Enterprise Server.

Code scanning is available for organization-owned repositories in GitHub Enterprise Server. This feature requires a license for GitHub Advanced Security. 有关详细信息,请参阅“关于 GitHub Advanced Security”。

注意:站点管理员必须为 your GitHub Enterprise Server instance 启用 code scanning,你才能使用这些功能。 有关详细信息,请参阅“为设备配置 code scanning”。

About CodeQL code scanning in your CI system

Code scanning 是一项功能,可用于分析 GitHub 仓库中的代码,以查找安全漏洞和编码错误。 分析发现的任何问题都显示在 GitHub Enterprise Server 中。 For information, see "About code scanning with CodeQL."

您可以使用 GitHub Actions 在 GitHub Enterprise Server 内运行 CodeQL code scanning 。 或者,如果您使用第三方持续集成或持续交付/部署 (CI/CD) 系统,您可以在现有系统中运行 CodeQL 分析并将结果上传到 your GitHub Enterprise Server instance。

将 CodeQL CLI 添加到第三方系统,然后调用工具分析代码并将 SARIF 结果上传到 GitHub Enterprise Server。 由此产生的 code scanning 警报与 GitHub Enterprise Server 内生成的任何警报一起显示。 有关详细信息,请参阅“关于 CI 系统中的 CodeQL 代码扫描”。

如果使用多个配置运行代码扫描,则有时警报会有多个分析源。 如果警报有多个分析源,你可在警报页上查看每个分析源的警报状态。 有关详细信息,请参阅“关于分析源”。

注意:上传 SARIF 数据以显示为 GitHub Enterprise Server 中的 code scanning 结果适用于启用了 GitHub Advanced Security 的组织拥有的数据库 。 有关详细信息,请参阅“管理存储库库的安全和分析设置”。

About the CodeQL CLI

CodeQL CLI 是一个可用来分析代码的独立产品。 其主要用途是生成代码空间的数据库表示形式,即 CodeQL 数据库。 数据库准备就绪后,您可以进行交互式查询,或者运行一系列查询以生成一组 SARIF 格式的结果,然后将结果上传到 your GitHub Enterprise Server instance。

Use the CodeQL CLI to analyze:

  • Dynamic languages, for example, JavaScript and Python.
  • Compiled languages, for example, C/C++, C# and Java.
  • Codebases written in a mixture of languages.

For more information, see "Installing CodeQL CLI in your CI system."

Notes:

  • The CodeQL CLI is available to customers with an Advanced Security license.

  • The CodeQL CLI is currently not compatible with non-glibc Linux distributions such as (musl-based) Alpine Linux.