跳至主要内容

配置大规模使用 CodeQL 进行代码扫描的高级设置

您可以使用脚本为组织中的特定仓库组配置代码扫描的高级设置。

谁可以使用此功能?

组织所有者、安全管理员以及具有 **管理员** 角色的组织成员

代码扫描适用于以下仓库类型

  • GitHub.com 上的公共仓库
  • 启用了 GitHub 高级安全 的 GitHub Enterprise Cloud 上的组织拥有的仓库

关于启用大规模使用 CodeQL 进行代码扫描的高级设置

如果您需要为组织中的许多仓库配置高度可自定义的代码扫描设置,或者组织中的仓库不符合默认设置的条件,则可以使用高级设置大规模启用代码扫描。

要跨多个仓库启用高级设置,您可以编写批量配置脚本。要成功执行脚本,必须为组织启用 GitHub Actions。

或者,如果您不需要对组织中许多仓库的代码扫描配置进行细粒度控制,则可以使用默认设置快速轻松地配置大规模代码扫描。有关更多信息,请参阅“配置大规模代码扫描的默认设置”。

使用脚本启用高级设置

对于不符合默认设置条件的仓库,您可以使用批量配置脚本跨多个仓库启用高级设置。

  1. 确定可以使用相同代码扫描配置进行分析的一组仓库。例如,所有使用生产环境构建 Java 工件的仓库。
  2. 创建并测试一个 GitHub Actions 工作流,以使用适当的配置调用 CodeQL 操作。有关更多信息,请参阅“配置高级代码扫描设置”。
  3. 使用其中一个示例脚本或创建一个自定义脚本,将工作流添加到组中的每个仓库。

使用模型包扩展 CodeQL 覆盖范围

注意

CodeQL 模型包和 CodeQL 模型编辑器目前处于公开预览阶段,可能会发生变化。模型包受 C#、Java/Kotlin、Python 和 Ruby 分析支持。

如果您的代码库依赖于 CodeQL 标准查询无法识别的库或框架,则可以通过在批量配置脚本中指定已发布的 CodeQL 模型包来扩展 CodeQL 覆盖范围。有关详细信息,请参阅“自定义代码扫描的高级设置”。

或者,如果您不需要对组织中许多存储库的代码扫描配置进行细粒度控制,则可以使用默认设置快速轻松地大规模配置模型包和代码扫描。有关详细信息,请参阅“编辑默认设置的配置”。