Break-glass 是什么
为紧急发布保留受控绕过路径:申请、审批、限时,事后补齐手续并复盘。目标不是禁止绕过,而是让绕过变得可审计、可收敛:豁免必须留痕,否则门禁会被逐步架空。流程要素包括触发条件、审批角色、时限与补偿动作。把它做成正式流程并起一个所有人找得到的名字,团队才不会用更隐蔽的野路子绕开门禁。
基本信息
| 触发条件 | 生产事故修复等,需说明紧迫性 |
|---|---|
| 审批 | 指定角色批准,记录理由与时限 |
| 留痕 | 豁免记录进审计日志与发布记录 |
| 补偿 | 事后补测试或评审,并安排复盘 |
| 时限 | 豁免默认短期有效,到期自动失效 |
| 入口 | 固定的申请入口(工单或聊天命令),不走私人渠道 |
| 指标 | 跟踪豁免次数与原因分布,识别门禁设计问题 |
典型使用场景
- 线上事故修复:绕过完整流水线先发修复版本
- 证书与密钥轮换:窗口短、变更小,走快速通道
- 第三方故障应急:依赖方要求紧急调整配置
- 演练豁免:混沌演练中预授权的操作通道
- 分支保护例外:需要直接推送时记录理由
- 数据修复脚本:一次性脚本在受控条件下加急执行
手工触发的高优发布
手工触发的高优发布
deploy-hotfix:
stage: deploy
script: ./deploy.sh --hotfix # 热修复部署脚本
rules:
- if: '$CI_COMMIT_BRANCH == "main"'
when: manual # 仅手动触发,不随流水线自动执行
allow_failure: false豁免流程要素
| 环节 | 动作 | 留痕 |
|---|---|---|
| 申请 | 说明原因与时限 | 工单或发布记录 |
| 审批 | 指定角色确认 | 审批意见与时间 |
| 执行 | 用受控工具执行发布 | 部署审计链 |
| 补偿 | 补测试与评审 | 复盘记录 |
绕过记录缺失:审计与复盘都无法还原决策过程,团队会重复踩坑。
豁免是一等公民流程:把它做顺畅,团队就不会用更隐蔽的方式绕过门禁。
定期统计豁免次数:持续升高说明门禁与业务节奏脱节,要改流程而不是单纯加锁。
豁免关闭要闭环:补偿动作完成后显式关闭豁免单,未闭环的自动提醒跟进。