opayo - Sagepay ACS 提供商被 CSP 阻止
问题描述
我们与 sagepay 集成,在我们的 Web 应用程序的 iframe 中加载 sagepay url。我们确实在 iframe 政策的指令中*.sagepay.com
定义了。frame-src
CSP
但是,最近我们的客户开始报告此错误,其中请求被浏览器(Chrome)阻止,原因是错误:The page's setting blocked the loading of resource at https://***.touchtechpayments.com
. 这特别发生在 3D 安全验证上。在联系 sagepay 时,我们被告知 touchtechpayments 是 Mastercard 的 ACS 提供商之一,需要允许 Secure3D。但是,他们没有所有 ACS 提供商的完整列表。
我确实将上述提供商添加到我们的 CSP 允许列表中,但是,我们开始收到其他提供商 (*.arcot.com) 由于 CSP 而被阻止的报告。
现在,我不确定处理这个问题的最佳方法是什么,而且 sagepay 支持也有点无能为力。在搜索万事达卡/Visa 时,我们找到了 CSP 提供商列表,但认为将所有这些都添加到 CSP 列表并维护该列表是不切实际的。
其他人如何处理这个问题?我确定其他人一定遇到过与 Sagepay 集成类似的问题?
解决方案
我们遇到了同样的问题。我们必须将 sandbox='allow-scripts allow-top-navigation allow-forms' 添加到 iframe 节点中。
推荐阅读
- gdb - 使用 --args 选项时重定向 gdb 的输出
- python - 按键时python追加到列表
- typescript - 我可以在条件类型中保留泛型吗?
- fullcalendar - Fullcalendar 将某天的事件转移到某些客户身上
- c++ - 在 C++ 中实现虚函数和运行时多态性时的编译时错误
- javascript - 错误:podfile 更新后 `Podfile` 中的 `React` 具有不同来源的多个依赖项
- python - GITHUB API 技术问题
- powerbi - 动态切片器选择项目 DAX
- reactjs - 将道具传递给 createMaterialTopTabNavigator 中的所有选项卡的问题
- python - 使用来自另一个数据框python的公共数据删除数据