hl-api-changelog/changelogs/2026-05/05_feat_wx-security_phase2e.md

2.3 KiB

feat(wx-security): Phase 2E AES 加密回调 + 全 cleanup (final)

PR: #1669 Issue: #1665 合并: 2026-05-05

wx 内容安全方案最后一个 Phase。AES 加密回调实现 + Phase 2A/2B 全部 P2 cleanup。

AES 加密回调

新建 WxBizMsgCryptUtiluser-service.wx.util,与企微 WxCryptUtil 解耦)。WxContentSecurityService.handleWebhook AES 分支:验签 → 解密 XML → 解析 trace_id+suggest+label → 走和明文相同的 update + MQ。解密失败抛 BusinessException → GlobalExceptionHandler 转 200+JSON。

公众平台后台支持「明文模式」(Phase 1 默认) / 「兼容模式」 / 「安全模式」三种切换;nacos 配 wechat.miniapp.webhook.encoding-aes-key 真值后即可切 AES 模式。

Phase 2A 6 P2 cleanup

# 修复
P2-1 LIKE 性能 → TODO 注释
P2-2 WxSecurityFeignClient.batchTraceStatus 改 POST + DTO
P2-3 UserFeedback extends BaseDO + V20260505_009
P2-4 Listener 三段事务设计 javadoc
P2-5 WxAuditStatusResolver 50 batch 超限 log.warn

Phase 2B 6 P2 cleanup

# 修复
P2-1 reviewId @JsonFormat(STRING) + ToStringSerializer
P2-2 SCENE_COMMENT 引枚举
P2-3 anonymousUserId 单测
P2-4 OPENID_FETCH_FAILED 错误码551006
P2-6 alreadyHidden CAS 防并发再机审

schema 跨 service 同步

  • order_complaint schema.sql 同步
  • refund_application / order_invoice order_service_v2_init.sql 同步
  • user_feedback sql/common_tables.sql 真相源同步

测试

  • mvn compile 全工程 BUILD SUCCESS
  • 173/173 全绿user 112 + order 61

🎯 wx 内容安全方案全链路闭环

  • Phase 1 #1659 基础设施
  • Phase 2A #1661 UGC 接入 + 公开列表 + MQ
  • Phase 2B #1667 评价举报子系统
  • Phase 2C #1666 出行人三层兜底
  • Phase 2D #1668 admin 后台 + Phase 2C cleanup
  • Phase 2E #1669 AES 加密 + 全 cleanup

部署注意事项

  • V20260505_009 在 hl_user_service schema
  • nacos 配 wechat.miniapp.webhook.encoding-aes-key 真值后才能切兼容/安全模式
  • 微信公众平台后台仍可用明文模式(不强制升级)

不在范围(后续工单)

  • Phase 2D-B 跨服务复审聚合
  • Phase 2D-C user_risk 规则实际应用
  • 站内信 SDK 集成