Composer 的 --audit-format 选项用于指定安全审计输出格式,支持 json 和 summary 等机器可读格式;其中 json 格式包含漏洞详情、严重程度、受影响版本和修复建议,便于在 CI/CD 中解析并判断是否中断构建,也可集成至漏洞管理平台或合规报告系统,提升自动化安全管控能力。

Composer 的 --audit-format 选项用于控制安全审计输出的格式,使报告更适合程序处理。当你运行 composer audit --audit-format=json 或其他支持的格式时,Composer 会以结构化方式输出依赖项中的已知安全漏洞,便于集成到自动化流程中。
支持的格式类型
目前 Composer 支持以下几种机器可读格式:
- json:输出标准 JSON 格式,包含漏洞详情、严重程度、受影响版本和修复建议。
- summary:虽然主要是给人看的,但结构较清晰,也可用于简单解析。
例如使用 JSON 格式:
composer audit --audit-format=json会返回类似如下内容:
{ "vulnerabilities": [ { "name": "symfony/http-foundation", "cve": "CVE-2023-12345", "severity": "high", "advisory": "https://security.symfony.com/advisories/SF2023-01", "fixedIn": "5.4.20, 6.2.10" } ], "summary": { "total": 1, "highSeverity": 1 } }在 CI/CD 中自动检测风险
通过机器可读格式,你可以将安全审计嵌入持续集成流程。脚本可以解析 JSON 输出并根据漏洞等级决定是否中断构建。
- CI 脚本读取 JSON 中的
severity字段,判断是否存在高危漏洞。 - 若发现未修复的高风险问题,自动标记构建为失败。
- 与其他工具(如 SAST 扫描器或 SBOM 生成器)对接,统一安全管理视图。
与第三方工具集成
结构化输出方便与其他系统协作:
- 导入到漏洞管理平台进行集中跟踪。
- 结合日志分析系统实现告警通知。
- 生成合规性报告,满足审计要求。
基本上就这些。使用 --audit-format=json 能让 Composer 的安全检查结果更容易被程序理解和利用,提升项目安全性自动化水平。不复杂但容易忽略。










