Codex Security CI/CD 概述
选择 CI 集成,准备扫描访问权限,并确定发现的问题和扫描覆盖范围如何影响流水线。
在 CI 中运行 Codex Security,审查拉取请求或合并请求中的变更,扫描默认分支,并保留发现的问题和覆盖范围信息。有关工作流、报告处理和强制执行选项,请参阅 CI 提供商对应的指南。
准备工作流
运行扫描需要 Codex Security 访问权限。将 OpenAI API key 保存到 CI 提供商的机密存储中,命名为 CODEX_SECURITY_API_KEY,然后将其映射到扫描进程的 OPENAI_API_KEY 环境变量。
仅对你信任的仓库和变更运行扫描。扫描会使用运行器的本地权限,且不会暂停以等待批准。将无关凭据和部署步骤放在单独的作业中。
使用已获批准的 Daybreak 模型
如需通过 Trusted Access for Cyber 使用 Daybreak Blue,请将 GitHub Action 的 model 输入设为 gpt-6-sol,并将 cyber-access-program 设为 daybreak_blue。如需直接使用 CLI 扫描,请使用 --model gpt-6-sol 和 --cyber-access-program daybreak_blue。
使用已启用 Daybreak Blue 且有权访问所选模型的项目中的 API key。设置模型或访问计划并不会授予访问权限。有关 配置可选的 Daybreak 访问权限,请参阅其中的 Action 设置说明。
选择集成方式
添加 GitHub Actions 工作流
按照 GitHub Actions 指南配置拉取请求检查和定时仓库扫描。Codex Security Action 会安装 CLI,保存报告,并添加作业摘要和源代码注解。该指南涵盖运行器设置、可选的 Daybreak 访问权限、SARIF 上传和严重性策略的强制执行。
添加 GitLab CI/CD 流水线
按照 GitLab CI/CD 指南配置合并请求、默认分支和定时扫描。先使用仅执行扫描的流水线,再逐步采用报告处理、策略强制执行以及可选的经验证修复。
使用其他 CI 系统
安装公开发布的 @openai/codex-security 包并直接运行 CLI。使用 --auth api-key,选择仓库扫描或差异扫描,并将输出保存到 Git 工作树之外的私有目录中。运行器必须提供 CLI 快速入门中列出的依赖项。
有关扫描选项、差异比较的修订版本、报告格式、状态和输出目录以及重试行为,请参阅 CLI 参考。
选择严重性策略
先将结果仅用作参考。审查具有代表性的问题、扫描覆盖范围、费用和运行时间,再决定哪些结果应阻止合并。
同时评估发现的问题和扫描完整性。严重性策略会评估当前扫描中达到或超过所配置阈值的问题。仓库摘要中此前尚未解决的问题不会影响该策略。即使未报告任何问题,不完整的扫描也可能导致部分区域未经审查。
在 Action 的 action-v0.3.0 版本中,扫描完成表示所配置的分析生成了有效结果。范围排除项、暂缓调查项及其他覆盖范围说明不会绕过严重性策略。扫描器错误和必需的报告生成错误会导致作业失败。CLI 0.3.0 遇到输入、执行、结果完整性或必需输出方面的故障时,会返回退出码 2。评估结果时请查看 coverage.json;扫描完成并不保证已发现所有漏洞。
按照 GitHub Actions 指南或 GitLab CI/CD 指南配置强制执行。如需直接集成 CLI,请参阅严重性策略强制执行和退出码。