2.1 KiB
2.1 KiB
07 — 接入加密回调与权威详情同步
What to build: 企业微信可以完成审批回调 URL 校验并推送加密事件;系统验签、解密和核对企业身份后快速记录回调并触发统一同步,最终始终以 getapprovaldetail 保存审批状态、审批人、意见、附件元数据和时间线。
Blocked by:
- 05 — 完成附件上传与企微异步提交闭环
.scratch/tech-global-audit/issues/02-integration-log-attempt-loop.md— 02 — 交付可恢复的 Integration Log 尝试闭环.scratch/tech-public-foundation/issues/10-sensitive-route-safe-summaries.md— 10 — 为敏感接口提供安全摘要策略
Status: ready-for-agent
架构通道: 主通道为复杂写 Application + Domain,回调协议和企微详情位于 Infrastructure Adapter。
完整业务边界: 本票收口回调协议、安全入站记录和单实例权威状态同步。明确不实现批量轮询,不消费退款或充值终态,不把回调载荷中的状态当成业务权威。
- GET 回调按企微协议完成 URL 校验;POST 回调校验 SHA1 签名、AES-CBC 解密并核对
receiveID=CorpID,错误签名、密文或企业身份安全拒绝。 - 入站回调先保存脱敏 Integration Log 与幂等标识,只记录事件类型、安全资源标识、大小、哈希和结果,不记录密文、明文、签名、Nonce 或密钥。
- 有效回调快速触发统一
SyncApprovalStatus并按企微约定响应;重复事件、乱序事件和同步任务重复投递不直接改写状态。 - 同步用例调用
getapprovaldetail作为唯一权威,保存审批详情、审批人名称快照、意见、附件元数据、时间线和最后同步时间。 - 审批实例以乐观锁和合法状态转换更新;详情未变化时只更新必要轮询事实,不产生第二个等价业务事件。
- 真实 Fiber 回调测试使用测试 Token/AES Key 构造签名密文,覆盖 URL 校验、签名/解密/CorpID 错误、重复事件、快速响应和权威同步;新增 Handler 同步路由、RouteSpec 和两个 OpenAPI 文档生成器。