Medusa v2.20.0 发布:支付区域校验、存储路由关联层级限制与 Redis 缓存格式变更
Medusa v2.20.0 于 2026 年 9 月 2 日发布,修复支付会话信任任意 provider ID 与 MFA 恢复码绕过问题,并对 Store API 关联展开层级设置默认上限;另有 Redis 缓存格式、搜索 provider 移除等破坏性变更。
Medusa v2.20.0 于 2026 年 9 月 2 日发布,包含安全修复、性能改进和若干破坏性变更。
安全修复
- 创建支付会话时不再信任请求传入的支付 provider ID。
createPaymentSessionsWorkflow和购物车支付校验步骤会验证所选 provider 是否已在购物车(或支付集合)所属区域启用,否则拒绝请求。若店铺前端曾传入任意 provider ID,需确认该 provider 已关联购物车所在区域。 - MFA 路由现在要求已实际完成挑战才允许访问,避免持有有效密码的攻击者通过恢复码接口重新生成恢复码或注册、删除 MFA 因素。
破坏性变更
- Store API 默认拒绝单次查询展开超过三层的关联,返回 400 并列出违规字段;仅
GET /store/products与GET /store/products/:id允许四层。可通过projectConfig.http.storeRelationsLimit全局调整,或在validateAndTransformQuery的查询配置中按路由覆盖。Admin 路由不受影响。 @medusajs/search-local被移除,需改用@medusajs/search-postgres、Medusa Cloud provider 或自定义 provider;searchMany下沉到搜索 provider 接口,自定义 provider 必须实现。@medusajs/caching-redis改用 64 位哈希键和简化存储机制,旧缓存条目升级后不可读,相当于缓存失效,无需改配置。- 升级后需执行
db:migrate。
功能变化
- 库存项支持带计量单位的小数数量,覆盖 Inventory Module、link modules、API 路由与工作流,后台仪表盘可显示单位。
- 草稿订单支持计算运费的配送选项,并新增
setCalculatedShippingPricingContext钩子注入定价上下文。
此外还包含 ESLint 工作流规则、向量搜索基础支持及多项缺陷修复。
来源与核对说明
- medusajs/medusa ↗https://github.com/medusajs/medusa/releases/tag/v2.20.0
本文经 AI 整理及独立自动校对,未做运行验证;自动校对仍可能遗漏问题,请以原始资料为准。
这篇内容对你有帮助吗?
点赞人数由服务器记录,收藏保存在当前浏览器。
继续阅读
ai-website-cloner-template v0.4.0:扩展 Agent 支持并改进多页克隆 →
CC Switch v4.0.11 新增应用卸载与 Codex 用量统计修复 →