跳到正文

在 GitLab CI/CD 中审查安全问题

隔离模型凭据、项目写入与验证环境,再逐步引入修复。

准备可信流水线

由项目维护者配置受信任运行器、完整 Git 历史和固定 Lime CLI。模型凭据使用掩码、隐藏与受保护变量,并限制环境范围。审查 CI 文件本身的变化,掩码不能使不可信代码安全。

从只读报告开始

先对获准合并请求检查已提交差异,再评估默认分支和定时全仓检查。源与目标分支、触发者和受保护资源必须满足项目政策;派生项目不自动获得凭据。

运行并核对结果

bash
lime exec review --base <BASE_REVISION> --json

将示例基准替换为已计算并存在的合并基点。报告、执行事件与范围说明保存在工作树之外。检查终态、原始证据及未覆盖内容,限制产物读取。

分开发布报告与执行门禁

平台报告导入可能需要成功作业。先验证并发布报告,再由独立门禁恢复真实执行和政策结果。报告作业成功不能抹去审查失败、取消或数据缺失。

逐步启用修复

  • 仅处理已接受且关联正确版本的问题。
  • 修复前验证回归用例能暴露问题。
  • 生成补丁后检查保护文件和修改范围。
  • 仓库定义的构建与测试在无模型、项目、注册表和部署秘密的环境运行。
  • 核对原漏洞与正常行为,无法判断时保留未确定状态。

发布合并请求草稿

发布使用独立、最小范围项目身份,修复进程不持有仓库写入令牌。先审查预览与验证证据,再授权创建或更新;记录已有草稿以避免重复。创建草稿不会自动合并。

预算与故障

先测量代表性运行,再设置作业超时、轮次和服务限额。缺产物查执行和配置,缺问题查报告范围,修复跳过查前提,发布失败查独立令牌;不要重复运行掩盖原始错误。