此版本的 GitHub Enterprise 已停止服务 2021-09-23. 即使针对重大安全问题,也不会发布补丁。 要获得更好的性能、改进的安全性和新功能,请升级到 GitHub Enterprise 的最新版本。 如需升级方面的帮助,请联系 GitHub Enterprise 支持

关于代码扫描

您可以使用 代码扫描 在 GitHub 上查找项目中的安全漏洞和代码错误。

代码扫描 在您拥有 GitHub Advanced Security 的许可证时可用。

注: 代码扫描 正在测试用于 GitHub Enterprise Server 2.22。 对于代码扫描的一般可用版本,请升级到最新版本的 GitHub Enterprise Server。

注:站点管理员必须为 您的 GitHub Enterprise Server 实例 启用 代码扫描,然后您才可使用此功能。 更多信息请参阅“为设备配置 代码扫描”。

关于 代码扫描

代码扫描 是一项功能,可用于分析 GitHub 仓库中的代码,以查找安全漏洞和编码错误。 分析发现的任何问题都显示在 GitHub Enterprise Server 中。

您可以使用 代码扫描 来查找代码中现有的问题,并且对其进行分类和确定修复的优先级。 代码扫描 还可防止开发者引入新问题。 您可以计划在特定的日期和时间进行扫描,或在仓库中发生特定事件(如推送)时触发扫描。

如果 代码扫描 发现您的代码中可能存在漏洞或错误,GitHub 会在仓库中显示警报。 在修复触发警报的代码之后,GitHub 将关闭警报。 更多信息请参阅“管理仓库的 代码扫描 警报”。

要监控您的仓库或组织的 代码扫描 结果,您可以使用 web 挂钩和 代码扫描 API。 有关用于 代码扫描 的 web 挂钩的信息,请参阅“web 挂钩事件和有效负载”。 有关 API 端点的信息,请参阅“代码扫描”。

要开始 代码扫描,请参阅“为仓库设置 代码扫描”。

关于 CodeQL

您可以在 github/codeql 仓库中查看并参与 代码扫描 的查询。 CodeQL 将代码视为数据,允许您在代码中查找潜在漏洞,比传统的静态分析工具更可靠。

QL 是授权 CodeQL 的查询语言。 QL 是一种面向对象的逻辑编程语言。 GitHub、语言专家和安全研究人员创建用于 代码扫描 的查询,查询是开源的。 社区维护和更新查询,以改善分析和减少误报。 更多信息请参阅 GitHub Security Lab 网站上的 CodeQL

有关 代码扫描 的 API 端点的更多信息,请参阅“代码扫描”。

  • C/C++
  • C#
  • Go
  • Java
  • JavaScript/TypeScript
  • Python

您可以在 github/codeql 仓库中查看并参与 代码扫描 的查询。 更多信息请参阅 CodeQL 文档中的 CodeQL 查询

关于第三方代码扫描工具

您可以将 SARIF 文件从第三方静态分析工具上传到 GitHub,并且在仓库中看到 代码扫描 来自这些工具的警报。

代码扫描 可与输出静态分析结果交换格式 (SARIF) 数据的第三方代码扫描工具互操作。 SARIF 是一个开放的标准。 更多信息请参阅“代码扫描 的 SARIF 输出。”

要开始,请参阅“将 SARIF 文件上传到 GitHub”。

延伸阅读