Skip to main content

使用 CodeQL 大规模为代码扫描配置高级设置

可以使用脚本为组织中的特定存储库组配置 code scanning 的高级设置。

谁可以使用此功能?

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

Code scanning 可用于以下存储库类型:

  • GitHub.com 上的公共存储库
  • 启用了 GitHub Advanced Security 的 GitHub Enterprise Cloud 上的组织拥有的存储库

关于使用 CodeQL 大规模为 code scanning 启用高级设置

如果需要为组织中的许多存储库配置高度可自定义的 code scanning 设置,或者如果组织中的存储库不适合进行默认设置,可以使用高级设置大规模启用 code scanning。

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

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

使用脚本启用高级设置

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

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

利用模型包扩展 CodeQL 覆盖率

**注意:**CodeQL 模型包和 CodeQL 模型编辑器当前为 公共预览版,可能随时更改。 模型包由 C#、Java/Kotlin、Python,以及 Ruby 分析支持。

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

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