4.5 KiB
生产基础设施一致性证据说明
1. 目标与边界
cmd/infrastructure-conformance把同一发布候选在目标环境中的域名与TLS、OIDC、PostgreSQL、Redis、对象存储、网络隔离和监控证据形成production-infrastructure-conformance-report-v1。报告用于阻止“只部署了清单”或“本地Compose可用”被误登记为生产基础设施已经验收。
本地冒烟只输出LOCAL_INFRASTRUCTURE/external_validation_required=true。只有证据来源为PRODUCTION,环境为STAGING或PRODUCTION,七类组件、强制控制项、观测时间和三类引用全部完整时,才能输出PRODUCTION_INFRASTRUCTURE/external_validation_required=false。该报告不替代容量结论、恢复演练、密钥轮换或业务发布审批。
2. 采集格式
输入使用production-infrastructure-capture-v1,顶层字段如下:
| 字段 | 说明 |
|---|---|
evidence_source |
LOCAL或PRODUCTION;不能用自定义值弱化范围 |
candidate_version、build_digest |
与候选证据包完全一致的版本和不可变镜像摘要 |
environment |
本地为LOCAL;真实报告只能是STAGING或PRODUCTION |
region_ref、cluster_ref |
脱敏区域和集群引用,不填写管理凭据或地址中的密钥 |
change_ticket_ref |
本地演练引用或目标环境变更工单 |
attested_by_ref、attested_at |
平台复核人引用和复核时间 |
collected_at |
本批证据收集结束时间 |
components |
七类组件证据;同一类型只能出现一次 |
每个组件必须包含component_type、resource_ref、status=VERIFIED、observed_at、verified_controls、probe_ref、configuration_ref和audit_ref。引用可指向受控工单、云资源台账、脱敏命令输出或监控截图,不应包含令牌、连接口令、证书私钥、对象存储密钥或业务正文。
3. 生产控制项
| 组件 | 必须验证的控制项 |
|---|---|
DOMAIN_TLS |
DNS已解析、TLS有效、证书到期受监控 |
OIDC |
JWKS可用、TLS有效、客户组织映射已核对 |
POSTGRES |
私网、TLS、高可用、备份已配置、已监控 |
REDIS |
私网、TLS、高可用、可从权威状态重建、已监控 |
OBJECT_STORE |
私有访问、TLS、版本或保留策略、已监控 |
NETWORK_ISOLATION |
入口受限、出口受限、命名空间隔离 |
MONITORING |
指标已抓取、告警规则已加载、真实接收器已路由 |
控制项名称必须使用校验器定义值。额外控制项可以保留,但不能替代上表中的必需项。可用性、备份和高可用不能只用配置文件存在来证明,应关联目标资源状态或受控验证结果。
4. 九项一致性检查
报告固定执行:采集模式、证据来源、候选身份、采集与候选绑定、环境身份、七类组件覆盖、生产控制项覆盖、观测时间线和证据引用九项检查。任一检查失败,结果为FAIL并保持外部待验。
PRODUCTION_INFRASTRUCTURE是证据包不可豁免门禁。索引标记为VERIFIED时,第一个文件必须是同候选的PASS/PRODUCTION_INFRASTRUCTURE报告;本地报告会被拒绝。清单中的production_infrastructure_validation汇总环境、区域、集群、七类组件、各组件控制项数量和未完成缺口。
5. 生成命令
go run ./cmd/infrastructure-conformance `
-capture E:\evidence\production-infrastructure-capture.json `
-candidate-version 0.63.0-rc.1 `
-build-digest sha256:<64位摘要> `
-output E:\evidence\production-infrastructure-report.json
本地可执行:
.\scripts\smoke-infrastructure-conformance.ps1
该脚本只做API就绪、OIDC JWKS、PostgreSQL、Redis、MinIO、Prometheus和仓库网络/告警配置的一条纵向检查;它不修改业务数据、不执行压力测试,也不会把PRODUCTION_INFRASTRUCTURE改为通过。
6. 现场执行顺序
- 固定候选版本、镜像摘要、区域、集群和变更工单。
- 对七类组件分别执行目标环境探针并保存脱敏输出、配置版本和云审计引用。
- 由平台复核人确认观测发生在同一候选部署后,生成采集JSON。
- 运行校验器,报告必须为
PASS/PRODUCTION_INFRASTRUCTURE且external_validation_required=false。 - 将报告作为该证据项第一个文件,再生成候选证据包并核对
coverage_complete=true。 - 继续完成独立的恢复、KMS、告警接收器、Safari和业务审批门禁;基础设施报告本身不放行生产。