baldwin / magento2-module-csp-shim
Magento 2 模块,用于替换默认的 Magento CSP 模块并有效禁用其功能
Requires
- php: ~7.4.0 || ~8.1.0 || ~8.2.0 || ~8.3.0
- magento/framework: 103.0.4-p9 || 103.0.5-p8 || 103.0.6-p6 || 103.0.7 || 103.0.7-p1
Requires (Dev)
Replaces
- magento/module-csp: 100.4.3-p9 || 100.4.4-p8 || 100.4.5-p6 || 100.4.6
This package is auto-updated.
Last update: 2024-09-09 07:55:29 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 模块,但会禁用其输出。选择您最喜欢的一个。
- https://github.com/yireo/Yireo_DisableCsp - 使用首选项来禁用 CSP 输出
- https://github.com/weiweiouyang/magento2-module-disable-csp - 禁用某些事件观察者
- https://github.com/outeredge/magento-disable-csp - 使用插件来禁用 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