注意
如果您使用 code scanning 的默认设置,或者使用 GitHub Actions 运行 CodeQL 操作的高级配置,那么您无需处理 SARIF 文件。 扫描结果将被自动上传并解析为code scanning警报。
SARIF 代表 静态分析结果交换格式。 这是一个基于 JSON 的标准,用于存储静态分析工具的结果。
如果使用 第三方分析工具或 CI/CD 系统 扫描代码是否存在漏洞,则可以生成 SARIF 文件并将其上传到 GitHub。 GitHub 将解析 SARIF 文件,并在您的存储库中使用结果作为 code scanning 体验的一部分显示警报。
GitHub 使用 SARIF 文件中的属性来显示警报。 例如,shortDescription 和 fullDescription 出现在 code scanning 警报的顶部。
location 使 GitHub 能够在代码文件中显示批注。
本文介绍如何在 GitHub上使用 SARIF 文件。 如果你是首次接触 SARIF 并希望进一步了解,请参阅 Microsoft 的 SARIF tutorials 存储库。
版本要求
Code scanning 支持 SARIF 2.1.0 JSON 架构的子集。 确保来自第三方工具的 SARIF 文件使用此版本。
上传方法
可以使用 GitHub Actions、code scanning API 或 CodeQL CLI 上传一个 SARIF 文件。 最佳上传方法取决于生成 SARIF 文件的方式。 有关详细信息,请参阅“将 SARIF 文件上传到 GitHub”。