Magento 2 рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рд╕реБрд░рдХреНрд╖рд╛ рдиреАрддрд┐

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдиреЗ Magento 2.3.5 рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐

[рд░рд┐рдкреЛрд░реНрдЯ рдУрдирд▓реА] рд╕реНрдХреНрд░рд┐рдкреНрдЯ '' *** '' рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рд╕реБрд░рдХреНрд╖рд╛ рдиреАрддрд┐ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИ: "рд╕реНрдХреНрд░рд┐рдкреНрдЯ-src *"ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ 'script-src-elem' рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП 'script-src' рдХрд╛ рдЙрдкрдпреЛрдЧ рдлрд╝реЙрд▓рдмреИрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдБ рдХрд┐ рдХрдЯ рдХреЗ рддрд╣рдд рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ

рдкрд░рд┐рдЪрдп


рд╕рдВрд╕реНрдХрд░рдг 2.3.5 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, Magento_CSP рдирд╛рдордХ рдПрдХ рдореЙрдбреНрдпреВрд▓ Magento рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рд╡рд╣ рд╕рд╛рдордЧреНрд░реА рд╕реБрд░рдХреНрд╖рд╛ рдиреАрддрд┐ рдХреЗ рд▓рд┐рдП рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИ, рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рд╛рдордЧреНрд░реА-рд╕реБрд░рдХреНрд╖рд╛-рдиреАрддрд┐-рд░рд┐рдкреЛрд░реНрдЯ-рдХреЗрд╡рд▓ , рдЬрдмрдХрд┐ рд╣реЗрдбрд░ рд╕рд╛рдордЧреНрд░реА-рд╕реБрд░рдХреНрд╖рд╛-рдиреАрддрд┐ , рдпрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ ред рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рд╕рдордп рдкрд░ рдФрд░ рдХрд╛рдлреА рдЕрдкреЗрдХреНрд╖рд┐рдд, "рдлрд┐рдХреНрд╕" рд╕рдВрд╕реНрдХрд░рдг рдмрдврд╝рд╛рддреЗ рд╕рдордп :) рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд┐рдЦрд╛ рдерд╛ рдХрд┐ рдХрдВрдЯреЗрдВрдЯ рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА рдкреЙрд▓рд┐рд╕реА рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╣реИрдмреЗ рдкрд░ рдХреНрдпрд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред рд╣реЗрдбрд░ рдХрдВрдЯреЗрдВрдЯ-рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА-рдкреЙрд▓рд┐рд╕реА рдпрд╛ рдХрдВрдЯреЗрдВрдЯ-рд╕рд┐рдХреНрдпреЛрд░рд┐рдЯреА-рдкреЙрд▓рд┐рд╕реА-рд░рд┐рдкреЛрд░реНрдЯ-рдУрдирд▓реА рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╡рд┐рдХреНрд░реЗрддрд╛ / рдореИрдЧрдиреЗрдЯреЛ / рдореЙрдбреНрдпреВрд▓-рд╕реАрдкреАрдПрд╕ / etc / config.xml рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЕрд▓рдЧ рд╕реЗ рдПрдбрдорд┐рди рдкрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╕реЗред







<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
    <default>
        <csp>
            <mode>
                <storefront>
                    <report_only>1</report_only>
                </storefront>
                <admin>
                    <report_only>1</report_only>
                </admin>
            </mode>
        </csp>
    </default>
</config>

"Report_uri" рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рдЙрд╕реА рд╕реНрдерд╛рди рдкрд░ рдХреЛрдИ рднреА рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП URL рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддрдм рд╕реЗ рдпрд╣ рд╡рд╣рд╛рдБ рдирд╣реАрдВ рд╣реИ, рдлрд┐рд░ рдХреНрд░реЛрдо рдмреЗрд░рд╣рдореА рд╕реЗ рдЕрдкрдиреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рдХрдВрд╕реЛрд▓ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рддрд╛ рд╣реИред



рдирдореВрдирд╛ рддреНрд░реБрдЯрд┐ рдкрд╛рда
The Content Security Policy 'font-src 'self' 'unsafe-inline'; form-action secure.authorize.net test.authorize.net geostag.cardinalcommerce.com geo.cardinalcommerce.com 1eafstag.cardinalcommerce.com 1eaf.cardinalcommerce.com centinelapistag.cardinalcommerce.com centinelapi.cardinalcommerce.com 'self' 'unsafe-inline'; frame-ancestors 'self' 'unsafe-inline'; frame-src secure.authorize.net test.authorize.net geostag.cardinalcommerce.com geo.cardinalcommerce.com 1eafstag.cardinalcommerce.com 1eaf.cardinalcommerce.com centinelapistag.cardinalcommerce.com centinelapi.cardinalcommerce.com www.paypal.com www.sandbox.paypal.com 'self' 'unsafe-inline'; img-src widgets.magentocommerce.com www.googleadservices.com www.google-analytics.com t.paypal.com www.paypal.com www.paypalobjects.com fpdbs.paypal.com fpdbs.sandbox.paypal.com *.vimeocdn.com s.ytimg.com 'self' 'unsafe-inline'; script-src assets.adobedtm.com secure.authorize.net test.authorize.net geostag.cardinalcommerce.com 1eafstag.cardinalcommerce.com geoapi.cardinalcommerce.com 1eafapi.cardinalcommerce.com songbird.cardinalcommerce.com includestest.ccdc02.com js.authorize.net jstest.authorize.net www.googleadservices.com www.google-analytics.com www.paypal.com www.sandbox.paypal.com www.paypalobjects.com t.paypal.com js.braintreegateway.com s.ytimg.com video.google.com vimeo.com www.vimeo.com cdn-scripts.signifyd.com www.youtube.com 'self' 'unsafe-inline' 'unsafe-eval'; style-src getfirebug.com 'self' 'unsafe-inline'; object-src 'self' 'unsafe-inline'; media-src 'self' 'unsafe-inline'; manifest-src 'self' 'unsafe-inline'; connect-src geostag.cardinalcommerce.com geo.cardinalcommerce.com 1eafstag.cardinalcommerce.com 1eaf.cardinalcommerce.com centinelapistag.cardinalcommerce.com centinelapi.cardinalcommerce.com 'self' 'unsafe-inline'; child-src 'self' 'unsafe-inline'; default-src 'self' 'unsafe-inline' 'unsafe-eval'; base-uri 'self' 'unsafe-inline';' was delivered in report-only mode, but does not specify a 'report-uri'; the policy will have no effect. Please either add a 'report-uri' directive, or deliver the policy via the 'Content-Security-Policy' header.

рдкреЙрд▓рд┐рд╕реА рдореЗрдВ рдЕрдкрдирд╛ url рдХреИрд╕реЗ рдЬреЛрдбрд╝реЗрдВ?


Csp_whitelist.xml рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде / etc / рдореЙрдбреНрдпреВрд▓ рдлрд╝реЛрд▓реНрдбрд░ рдХреА рдЬрдбрд╝ рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ

<?xml version="1.0" encoding="UTF-8"?>
<csp_whitelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Csp:etc/csp_whitelist.xsd">
    <policies>
        <policy id="POLICY_ID">
            <values>
                <value id="VALUE_ID" type="TYPE" algorithm="ALGORITHM">SOME DOMAIN</value>
            </values>
        </policy>
    </policies>
</csp_whitelist>

рдЬрд╣рд╛рдВ POLICY_ID рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ:

  • рдбрд┐рдлрд╝реЙрд▓реНрдЯ-src
  • рд╕реНрдХреНрд░рд┐рдкреНрдЯ src
  • рд╡рд╕реНрддреБ-src
  • рд╢реИрд▓реА-src
  • img src-
  • рдореАрдбрд┐рдпрд╛-src
  • рдлреНрд░реЗрдо src
  • font-src
  • рдХрдиреЗрдХреНрдЯ-src

VALUE_ID - рдПрдХ рдордирдорд╛рдирд╛ рдЕрдиреЛрдЦрд╛ рдирд╛рдо
TYPE - рдкреНрд░рдХрд╛рд░, рдбреЛрдореЗрди рдпрд╛ рд╣реИрд╢
ALGORITHM - рд╣реИрд╢рд┐рдВрдЧ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо (TYPE = рд╣реИрд╢ рдХреЗ рд╕рд╛рде) рдХрд╛ рдорд╛рди рд▓реЗ рд╕рдХрддрд╛ рд╣реИ , рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП sha256

рдЖрдЗрдП рдореИрдЧреНрдЬреАрди рдХреЗ рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рд╕реЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ :

<?xml version="1.0"?>
<!--
/**
 * Copyright  Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<csp_whitelist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Csp/etc/csp_whitelist.xsd">
    <policies>
        <policy id="object-src">
            <values>
                <value id="mage-base" type="host">https://magento.com</value>
                <value id="hash" type="hash" algorithm="sha256">B2yPHKaXnvFWtRChIbabYmUBFZdVfKKXHbWtWidDVF8=</value>
                <value id="hash2" type="hash" algorithm="sha256">B3yPHKaXnvFWtRChIbabYmUBFZdVfKKXHbWtWidDVF8=</value>
            </values>
        </policy>
        <policy id="media-src">
            <values>
                <value id="mage-base" type="host">https://magento.com</value>
                <value id="devdocs-base" type="host">https://devdocs.magento.com</value>
            </values>
        </policy>
    </policies>
</csp_whitelist>

All Articles