baldwin / magento2-module-csp-shim

Magento 2 模块,用于替换默认的 Magento CSP 模块并有效禁用其功能

v1.0.3 2024-06-20 16:04 UTC

README

目的

本模块旨在帮助那些不希望处理与 Magento 一同提供的 CSP (内容安全策略) 模块的用户。

在 Magento 2.4.7 之前,操作很简单,您只需通过 composer 的 replace 语法删除模块即可。但在 Magento 2.4.7 中,该模块与某些模块(如 AdminAnalytics、Checkout 和 Paypal 模块)集成得更紧密,当您尝试使用 composer 的 replace 语法删除 CSP 模块时,会导致 bin/magento setup:di:compile 失败。

此模块为此情况提供了解决方案,通过假装成为某些其他模块所需的类别的 Magento CSP 模块。此模块引入的类使用 Magento 命名空间,因为没有其他方式可以做到这一点,但类实际上是空的,只包含空函数,这样在其他模块调用它们时就不会崩溃。

此模块包含 composer 的 replace 行以删除 Magento CSP 模块,因此您不再需要自己执行此操作。

更新 2024 年 6 月 12 日:由于 Magento 开发人员决定将 CSP 变更回滚到以下 Magento 安全版本,因此我们现在也在 shim 中支持这些版本。

  • 2.4.4-p9
  • 2.4.5-p8
  • 2.4.6-p6

替代方案

此模块可能不是最佳解决方案(第三方模块可能尝试使用本模块中未提供的类),因此我们还可以推荐一些替代方案,这些方案不会删除 CSP 模块,但会禁用其输出。选择您最喜欢的一个。

注意

  • 当您关心 PCI DSS 合规性时,请不要安装此模块!
  • 该模块目前仅声明与特定版本的 Magento 兼容,很难预测未来会发生什么,因此当发布新版本时,我们将尝试打开与更多未来 Magento 版本的兼容性。

兼容性

  • 此模块应与 Magento 2.4.4-p9、2.4.5-p8、2.4.6-p6、2.4.7 和 2.4.7-p1 兼容
  • 该模块应与 PHP 7.4、8.1、8.2 和 8.3 兼容

安装

您可以使用 composer 安装此模块

composer require baldwin/magento2-module-csp-shim

之后,您可以使用以下方式在 Magento 中激活它:

bin/magento setup:upgrade