结论
系统无法确认请求由持有正确 Secret 的发送方生成。不要在签名失败时继续处理订单、支付或账户变更等业务。
证据应该包含什么
- 平台名称与事件类型
- 使用的签名请求头名称
- 算法和输出编码
- Body 字节长度与 Content-Type
- 脱敏后的收到值和本地计算值
修复步骤
- 从服务器最早能够访问请求的位置捕获原始 Body。
- 确认 Secret 属于当前应用、仓库或端点。
- 确认平台要求 Hex、Base64 或带算法前缀的格式。
- 使用 HookTra 本地验签工具复算。
- 通过后再恢复业务处理,并增加失败告警。