hl-api-changelog/changelogs-v2-mp/2026-06/22_售后工单mp端归属校验加固_小程序.md

1.9 KiB

【修正·小程序】售后工单 mp 端接口加归属校验(防横向越权)

模块order-v3 售后工单aftersale小程序端 类型:安全加固(每日审查驱动,新模块上线前修正) 影响端点:/v3/mp/aftersale/ticket/**(我的工单列表 / 详情 / 撤回) 关联:售后工单中心 PR1-5#4162/#4165/#4168/#4173/#4185的每日审查修正 测试服已部署验证9443 实测端点 200

⚠️ 关键说明

售后工单 mp 端三个用户入口此前缺少归属校验,任意登录用户传他人 ticketId/orderId 即可读取或撤回他人工单(横向越权 IDOR。本次加固经订单归属校验当前用户是否为下单人,非本人操作返回错误码 586014TICKET_NOT_OWN

正常业务流程下,小程序用户只操作自己订单的售后工单,不会触发该错误;前端无需改动,仅需对 586014 做兜底提示(如「无权访问该工单」)。

1. 受影响端点与行为

端点 修正
GET /v3/mp/aftersale/ticket/my(我的工单列表) 新增按当前用户校验 orderId 归属;端点入参不变,仅服务端加校验
GET /v3/mp/aftersale/ticket/{id}(工单详情) 校验工单所属订单归属当前用户,非本人抛 586014
POST /v3/mp/aftersale/ticket/{id}/withdraw(撤回) 同上归属校验,非本人不可撤回(且不再触发他人 OA 审批撤销)

2. 附带修正:撤回工单不再消失

撤回WITHDRAWN此前被误当软删处理,导致撤回后的工单在「我的工单」列表/详情中永久不可见。本次修正后,撤回是可见终态,撤回的工单仍可在列表与详情中查看(状态显示「已撤回」)。

3. 错误码

code 含义
586014 无权操作该售后工单(非本人订单)