支付提供商POST重定向至商店致客户会话丢失问题咨询
支付提供商插件3D-Secure POST回调会话丢失问题
我正在开发一款支付提供商插件,多数支付方式完成流程后,服务商以GET方式返回数据,此时功能正常。但信用卡支付因3D-Secure验证,仅通过POST方式返回数据,这时会出现客户会话丢失的问题,本地及测试环境均存在该现象。
已尝试的无效解决方案
- 完全禁用CSRF保护
- 在控制器中单独禁用CSRF保护
- 使用
@CSRFExempt注解(或类似方式) - 将结账页面隐藏字段的
_csrf_token传递给支付提供商,且该token已被服务商在响应中返回,但仍无效
异常现象
传递给支付服务商的_csrf_token,与GET返回时会话中存储的有效token完全不同,但该token确实来自结账页面的隐藏字段,未被修改过。结账页面仅为部分支付方式(如iDEAL)新增了可选的银行选择字段,但这些字段并未被传递,因此此处无变动。
当前临时解决方案
通过传递带安全哈希的session ID,在服务商返回时重新登录客户,但希望能找到无需此步骤的方案,以消除潜在安全风险。
另外,去年11月相关论坛已有同类问题帖子,说明并非个例。
内容的提问来源于stack exchange,提问作者Chris Schrut
相关产品推荐
相关产品推荐

