कॉन्टेंट की सुरक्षा नीति के साथ इंटिग्रेट करना

कॉन्टेंट की सुरक्षा के बारे में नीति (सीएसपी), कॉन्टेंट को सुरक्षित रखने का एक ज़रिया है अपने वेब पेज को सीमित करके यह तय करें कि किन रिसॉर्स और स्क्रिप्ट को लोड होने की अनुमति है और लागू करना. सीएसपी को चालू करने के लिए, Content-Security-Policy हेडर को आपके वेब सर्वर से एचटीटीपी रिस्पॉन्स.

सीएसपी को कॉन्फ़िगर करने के दो स्टैंडर्ड तरीके हैं:

  1. उन डोमेन की अनुमति वाली सूची बनाएं जो पेज पर अपने संसाधनों को इंजेक्ट कर सकते हैं.

  2. कोई रैंडम नॉन्स तय करें, जिससे पेज पर मौजूद संसाधन मार्क किए जाने चाहिए लोड करने के लिए. इस तरीके को स्ट्रिक्ट सीएसपी के नाम से जाना जाता है.

क्योंकि Google प्रकाशक टैग (GPT) जिन डोमेन में बदलाव का इस्तेमाल करता है समय पर, हम सिर्फ़ सख्त सीएसपी (दूसरा विकल्प) का ही समर्थन करते हैं. इस तरीके को अपनाने से ऐसे डोमेन की रोलिंग सूची बनाए रखें जो पुराने हो सकते हैं और आपके की वेबसाइट पर जाएं.

GPT के साथ सीएसपी को सेट अप किया जा रहा है

  1. अपने वेब सर्वर पर सीएसपी चालू करें.

    सख्त सीएसपी का इस्तेमाल करने में बताए गए निर्देशों का पालन करें, ताकि सीएसपी हेडर सेट अप करना और अपने पेज के हर स्क्रिप्ट टैग पर नॉन्स को लागू करना, gpt.js सहित. GPT खास तौर पर इनके साथ काम करता है: सीएसपी के लिए निर्देश:

    Content-Security-Policy:
      object-src 'none';
      script-src 'nonce-{random}' 'unsafe-inline' 'unsafe-eval' 'strict-dynamic' https: http:;
      base-uri 'none';
      report-uri https://your-report-collector.example.com/
    

    अगर यह आपके इस्तेमाल के उदाहरण के मुताबिक सही हो, तो अनुमति देने वाली एक और नीति चुनें. ज़्यादा देखें पाबंदी वाली नीतियां, बिना किसी सूचना के भंग हो सकती हैं.

  2. क्रॉस-डोमेन रेंडरिंग चालू करें.

    विज्ञापन iframe, ऐसे बाहरी संसाधन लोड कर सकते हैं जिनकी अनुमति शायद सीएसपी. क्योंकि एक ही डोमेन iframe, टॉप लेवल विंडो के सीएसपी को इनहेरिट करते हैं, और GPT, क्रिएटिव की सामग्री, समान-डोमेन को नियंत्रित नहीं कर सकता क्रिएटिव आम तौर पर सीएसपी हेडर के साथ ठीक से काम नहीं करेंगे.

    सभी क्रिएटिव के लिए क्रॉस-डोमेन रेंडरिंग चालू करने के लिए, googletag.pubads().setForceSafeFrame(true) इससे पहले कि आपका कोई विज्ञापन स्लॉट लोड हो.

    <!doctype html>
    <html>
      <head>
        <meta charset="utf-8">
        <title>Hello GPT</title>
        <script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" nonce="KC7tcz53FHqumKP1" async></script>
        <script nonce="KC7tcz53FHqumKP1">
          window.googletag = window.googletag || {cmd: []};
          googletag.cmd.push(function() {
            googletag.pubads().setForceSafeFrame(true);
          });
        </script>
      </head>
    

टेस्ट करना

हमारा सुझाव है कि आप सबसे पहले अपनी नीतियों की जांच करने के लिए, Content-Security-Policy-Report-Only हेडर Content-Security-Policy. हेडर रिपोर्ट उल्लंघनों की रिपोर्ट करती है, लेकिन फिर भी इसकी अनुमति देती है उन्हें पेज पर रखा जा सकता है.