2. 系统架构概览:追溯平台整体架构、第三方认证系统角色、证书管理接口在集成中的位置

在开始编码之前,必须先理解两个核心系统——追溯平台与第三方认证系统——的架构边界,以及证书管理接口在整个集成链路中的锚点位置。本章从三个层次展开:追溯平台的整体分层架构、第三方认证系统的角色模型、证书接口的集成位置与数据流向。

2.1 追溯平台整体架构(分层视图)

追溯平台采用经典的四层企业级架构,从上至下依次为:接入层、业务服务层、核心数据层和基础设施层。证书管理接口横跨接入层与业务服务层,是平台对外提供认证能力的关键通道。

架构要点:证书管理接口并非孤立模块,它同时依赖业务服务层的“证书服务”和核心数据层的“证书存储”,并与第三方认证系统形成双向数据交换。
追溯平台四层架构与证书管理接口位置 接入层(API Gateway / Nginx) RESTful API · 身份认证 · 流量控制 · 请求路由 ← 证书管理接口入口(/api/v1/certificates/*) 业务服务层(微服务集群) 产品追溯服务 · 批次管理服务 · 用户服务 证书服务(签发/验证/吊销/同步) ← 证书管理接口核心逻辑所在层 核心数据层(MySQL + Redis + MinIO) 证书表 · 证书链存储 · 吊销列表(CRL) ← 证书持久化与缓存 基础设施层(K8s / Docker / 监控 / 日志) 容器编排 · 弹性伸缩 · 链路追踪 证书接口贯穿接入层与业务层

2.2 第三方认证系统的角色模型

第三方认证系统在集成中承担三个核心角色:证书颁发机构(CA)、身份验证服务(IdP)和证书状态查询服务(OCSP/CRL)。下表对比了各角色的职责与接口交互方式:

角色 职责描述 与追溯平台的交互接口 数据方向
CA(证书颁发机构) 签发数字证书、维护证书生命周期 证书申请接口(CSR提交) 追溯平台 → 第三方
IdP(身份提供者) 验证用户/设备身份,返回认证断言 OAuth2 / OIDC 令牌端点 双向
OCSP/CRL 服务 实时查询证书是否被吊销 OCSP 请求 / CRL 下载 追溯平台 → 第三方
设计决策:本课程中,第三方认证系统采用“统一网关”模式对外暴露服务,追溯平台只需与网关交互,无需直接对接 CA 内部集群。这降低了集成复杂度,也便于后续切换认证供应商。

2.3 证书管理接口在集成中的位置

证书管理接口位于追溯平台业务服务层的“证书服务”模块中,是连接平台内部业务与第三方认证系统的唯一认证数据通道。其核心职责包括:

  • 证书申请与签发:接收平台内部业务请求,组装 CSR,调用第三方 CA 接口获取证书。
  • 证书验证与状态同步:定期或按需查询第三方 OCSP 服务,更新本地证书状态。
  • 证书吊销与 CRL 同步:当平台侧触发吊销事件时,向第三方发送吊销请求,并同步吊销列表。
  • 证书链管理:维护从根 CA 到终端证书的完整链,支持双向 TLS 握手。
证书管理接口集成位置与数据流向 追溯平台内部 业务服务 (产品/批次) 证书管理接口 (核心集成点) 证书存储 (MySQL + Redis) 证书状态缓存 (本地 CRL) 第三方认证系统 CA 签发服务 (证书颁发) OCSP 服务 (状态查询) CRL 发布点 (吊销列表) 身份认证服务 (OAuth2 / OIDC) HTTPS / mTLS CRL 同步 吊销请求 证书管理接口是追溯平台与第三方认证系统之间的唯一认证数据通道

2.4 集成数据流全景

一次完整的证书申请与验证流程,涉及以下关键步骤:

  1. 业务触发:追溯平台内部业务服务(如产品批次注册)向证书管理接口发起证书申请请求。
  2. CSR 组装:证书管理接口根据业务参数组装证书签名请求(CSR),包含公钥、组织信息、有效期等。
  3. 第三方签发:接口将 CSR 发送至第三方 CA 服务,CA 验证身份后签发数字证书并返回。
  4. 本地持久化:证书管理接口将证书存入本地证书存储(MySQL),同时更新 Redis 缓存。
  5. 状态同步:接口定期向第三方 OCSP 服务查询证书状态,更新本地状态缓存。
  6. 吊销处理:当平台侧触发吊销事件时,接口向第三方发送吊销请求,并同步 CRL 到本地。
关键约束:证书管理接口必须保证与第三方认证系统的数据最终一致性。网络抖动或第三方服务不可用时,接口应具备重试机制和本地降级策略,避免阻塞核心业务链路。

2.5 接口契约概览

证书管理接口对外暴露的核心端点如下表所示,后续章节将逐一实现:

端点路径 HTTP 方法 功能描述 第三方依赖
/api/v1/certificates/apply POST 申请新证书 CA 签发服务
/api/v1/certificates/{id}/verify GET 验证证书有效性 OCSP 服务
/api/v1/certificates/{id}/revoke POST 吊销指定证书 CA 吊销接口
/api/v1/certificates/sync-crl POST 同步第三方 CRL 到本地 CRL 发布点
/api/v1/certificates/chain GET 获取完整证书链 CA 证书库