You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

115 lines
6.3 KiB

  1. <?xml version="1.0"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
  9. <preference for="Magento\Csp\Api\CspRendererInterface" type="Magento\Csp\Model\CspRenderer" />
  10. <type name="Magento\Csp\Model\PolicyRendererPool">
  11. <arguments>
  12. <argument name="renderers" xsi:type="array">
  13. <item name="header" xsi:type="object">Magento\Csp\Model\Policy\Renderer\SimplePolicyHeaderRenderer</item>
  14. </argument>
  15. </arguments>
  16. </type>
  17. <preference for="Magento\Csp\Api\PolicyCollectorInterface" type="Magento\Csp\Model\CompositePolicyCollector" />
  18. <preference for="Magento\Csp\Model\Collector\MergerInterface" type="Magento\Csp\Model\Collector\CompositeMerger" />
  19. <type name="Magento\Csp\Model\Collector\CompositeMerger">
  20. <arguments>
  21. <argument name="mergers" xsi:type="array">
  22. <item name="fetch" xsi:type="object">Magento\Csp\Model\Collector\FetchPolicyMerger</item>
  23. <item name="flag" xsi:type="object">Magento\Csp\Model\Collector\FlagPolicyMerger</item>
  24. <item name="plugins" xsi:type="object">Magento\Csp\Model\Collector\PluginTypesPolicyMerger</item>
  25. <item name="sandbox" xsi:type="object">Magento\Csp\Model\Collector\SandboxPolicyMerger</item>
  26. </argument>
  27. </arguments>
  28. </type>
  29. <type name="Magento\Csp\Model\CompositePolicyCollector">
  30. <arguments>
  31. <argument name="collectors" xsi:type="array">
  32. <item name="config" xsi:type="object" sortOrder="1">Magento\Csp\Model\Collector\ConfigCollector\Proxy</item>
  33. <item name="whitelist" xsi:type="object" sortOrder="2">Magento\Csp\Model\Collector\CspWhitelistXmlCollector\Proxy</item>
  34. <item name="controller" xsi:type="object" sortOrder="100">Magento\Csp\Model\Collector\ControllerCollector\Proxy</item>
  35. <item name="dynamic" xsi:type="object" sortOrder="3">Magento\Csp\Model\Collector\DynamicCollector\Proxy</item>
  36. </argument>
  37. <argument name="mergers" xsi:type="array">
  38. <item name="composite" xsi:type="object">Magento\Csp\Model\Collector\MergerInterface</item>
  39. </argument>
  40. </arguments>
  41. </type>
  42. <type name="Magento\Csp\Model\Collector\Config\PolicyReaderPool">
  43. <arguments>
  44. <argument name="readers" xsi:type="array">
  45. <item name="fetch" xsi:type="object">Magento\Csp\Model\Collector\Config\FetchPolicyReader</item>
  46. <item name="plugin_types" xsi:type="object">Magento\Csp\Model\Collector\Config\PluginTypesPolicyReader</item>
  47. <item name="sandbox" xsi:type="object">Magento\Csp\Model\Collector\Config\SandboxPolicyReader</item>
  48. <item name="flag" xsi:type="object">Magento\Csp\Model\Collector\Config\FlagPolicyReader</item>
  49. </argument>
  50. </arguments>
  51. </type>
  52. <preference for="Magento\Csp\Api\ModeConfigManagerInterface" type="Magento\Csp\Model\Mode\ConfigManager" />
  53. <type name="Magento\Csp\Model\Collector\CspWhitelistXml\Reader">
  54. <arguments>
  55. <argument name="converter" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Converter</argument>
  56. <argument name="schemaLocator" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\SchemaLocator</argument>
  57. <argument name="fileResolver" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\FileResolver</argument>
  58. <argument name="fileName" xsi:type="string">csp_whitelist.xml</argument>
  59. </arguments>
  60. </type>
  61. <type name="Magento\Csp\Model\Collector\CspWhitelistXmlCollector">
  62. <arguments>
  63. <argument name="configReader" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Data</argument>
  64. </arguments>
  65. </type>
  66. <type name="Magento\Csp\Model\Collector\CspWhitelistXml\Data">
  67. <arguments>
  68. <argument name="reader" xsi:type="object">Magento\Csp\Model\Collector\CspWhitelistXml\Reader\Proxy</argument>
  69. </arguments>
  70. </type>
  71. <preference for="Magento\Csp\Api\InlineUtilInterface" type="Magento\Csp\Helper\InlineUtil" />
  72. <type name="Magento\Csp\Plugin\TemplateRenderingPlugin">
  73. <arguments>
  74. <argument name="util" xsi:type="object">Magento\Csp\Api\InlineUtilInterface\Proxy</argument>
  75. </arguments>
  76. </type>
  77. <type name="Magento\Framework\View\TemplateEngine\Php">
  78. <arguments>
  79. <argument name="blockVariables" xsi:type="array">
  80. <item name="csp" xsi:type="object">Magento\Csp\Api\InlineUtilInterface\Proxy</item>
  81. <item name="secureRenderer" xsi:type="object">Magento\Framework\View\Helper\SecureHtmlRenderer\Proxy</item>
  82. <item name="escaper" xsi:type="object">Magento\Framework\Escaper</item>
  83. <item name="localeFormatter" xsi:type="object">Magento\Framework\Locale\LocaleFormatter</item>
  84. </argument>
  85. </arguments>
  86. </type>
  87. <type name="Magento\Framework\App\RouterInterface">
  88. <plugin name="csp_aware_plugin" type="Magento\Csp\Plugin\CspAwareControllerPlugin" />
  89. </type>
  90. <type name="Magento\Framework\View\Helper\SecureHtmlRenderer">
  91. <arguments>
  92. <argument name="processors" xsi:type="array">
  93. <item name="csp" xsi:type="object">Magento\Csp\Helper\InlineUtil\Proxy</item>
  94. </argument>
  95. </arguments>
  96. </type>
  97. <type name="Magento\Csp\Observer\Render">
  98. <arguments>
  99. <argument name="cspRenderer" xsi:type="object">Magento\Csp\Api\CspRendererInterface</argument>
  100. </arguments>
  101. </type>
  102. <type name="Magento\Csp\Model\BlockCache">
  103. <arguments>
  104. <argument name="cache" xsi:type="object">configured_block_cache</argument>
  105. <argument name="serializer" xsi:type="object">Magento\Framework\Serialize\Serializer\Serialize</argument>
  106. </arguments>
  107. </type>
  108. <type name="Magento\Framework\View\Element\Context">
  109. <arguments>
  110. <argument name="cache" xsi:type="object">Magento\Csp\Model\BlockCache</argument>
  111. </arguments>
  112. </type>
  113. </config>