कॉन्टेंट की सुरक्षा के लिए नीति (सीएसपी), वेब की सुरक्षा का एक ऐसा स्टैंडर्ड है जिसे ज़्यादातर ब्राउज़र पर इस्तेमाल किया जा सकता है. इसका मकसद, इंजेक्शन पर आधारित कुछ तरह के हमलों को रोकना है. इसके लिए, डेवलपर को यह कंट्रोल दिया जाता है कि उनके ऐप्लिकेशन कौनसे रिसॉर्स लोड करें. सीएसपी का इस्तेमाल करने वाली साइटों पर Google Tag Manager को डिप्लॉय करने का तरीका जानने के लिए, इस गाइड का इस्तेमाल करें.
सीएसपी का इस्तेमाल करने के लिए, कंटेनर टैग चालू करना
सीएसपी वाले किसी पेज पर Google Tag Manager का इस्तेमाल करने के लिए, सीएसपी को Tag Manager के कंटेनर कोड को चलाने की अनुमति देनी होगी. यह कोड, इनलाइन JavaScript कोड के तौर पर बनाया जाता है. यह gtm.js स्क्रिप्ट को इंजेक्ट करता है. इसे कई तरीकों से किया जा सकता है. जैसे, नॉनस या हैश का इस्तेमाल करके. हमारा सुझाव है कि
नॉनस का इस्तेमाल किया जाए. यह एक ऐसी रैंडम वैल्यू होनी चाहिए जिसका अनुमान न लगाया जा सके. सर्वर, हर जवाब के लिए इसे
अलग-अलग जनरेट करता है. Content-Security-Policy के script-src-elem डायरेक्टिव में, नॉनस की वैल्यू डालें:
Content-Security-Policy:
script-src-elem 'nonce-{SERVER-GENERATED-NONCE}';
img-src www.googletagmanager.com;
connect-src www.googletagmanager.com www.google.com
इसके बाद, Tag Manager के इनलाइन कंटेनर कोड के नॉनस-अवेयर वर्शन का इस्तेमाल करें. इनलाइन स्क्रिप्ट एलिमेंट पर, नॉनस एट्रिब्यूट की वैल्यू को इसी वैल्यू पर सेट करें:
<!-- Google Tag Manager -->
<script nonce='{SERVER-GENERATED-NONCE}'>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;var n=d.querySelector('[nonce]');
n&&j.setAttribute('nonce',n.nonce||n.getAttribute('nonce'));f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXXX');</script>
<!-- End Google Tag Manager -->
इसके बाद, Tag Manager, पेज में जोड़ी गई सभी स्क्रिप्ट में नॉनस को शामिल करेगा.
इनलाइन स्क्रिप्ट को चलाने की अनुमति देने के अन्य तरीके भी हैं. जैसे, सीएसपी में इनलाइन स्क्रिप्ट का हैश डालना.
अगर नॉनस या हैश के सुझाए गए तरीके काम नहीं करते हैं, तो सीएसपी के script-src-elem सेक्शन में 'unsafe-inline'
डायरेक्टिव जोड़कर, Tag Manager की इनलाइन स्क्रिप्ट को चलाने की अनुमति दी जा सकती है.
इस तरीके का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | 'unsafe-inline' https://www.googletagmanager.com |
| img-src | www.googletagmanager.com |
| connect-src | www.googletagmanager.com www.google.com |
कस्टम JavaScript वैरिएबल
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src | 'unsafe-eval' |
झलक मोड
Google Tag Manager के झलक मोड का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | https://www.googletagmanager.com https://tagmanager.google.com |
| style-src | https://www.googletagmanager.com https://tagmanager.google.com https://fonts.googleapis.com |
| img-src | https://www.googletagmanager.com https://ssl.gstatic.com https://www.gstatic.com |
| font-src | https://fonts.gstatic.com data: |
Google Analytics
Google Analytics टैग का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए. 1 से मार्क किए गए एंडपॉइंट, खास तौर पर विज्ञापन सुविधाओं के लिए हैं. हालांकि, हमारा सुझाव है कि इन्हें शुरुआती सेटअप के दौरान शामिल किया जाए. इससे, अगर बाद में Google Ads को लिंक किया जाता है, तो आपको सीएसपी को अपडेट करने की ज़रूरत नहीं पड़ेगी.
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | https://www.googletagmanager.com |
| img-src | https://*.google-analytics.com https://www.googletagmanager.com https://*.g.doubleclick.net 1 https://*.google.com 1 https://*.google.<TLD> 1 |
| connect-src | https://*.google-analytics.com https://*.analytics.google.com https://www.googletagmanager.com https://*.g.doubleclick.net 1 https://*.google.com 1 https://*.google.<TLD> 1 https://pagead2.googlesyndication.com 1 |
| frame-src | https://www.googletagmanager.com 1 |
1 विज्ञापन एंडपॉइंट: इन डोमेन की ज़रूरत सिर्फ़ Google Analytics के उन डिप्लॉयमेंट के लिए होती है जो Google Ads से लिंक हैं या विज्ञापन सुविधाओं का इस्तेमाल कर रहे हैं.
Google Ads
Google Ads के कन्वर्ज़न, रीमार्केटिंग या कन्वर्ज़न लिंक करने वाले टैग का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | https://www.googleadservices.com https://www.google.com https://www.googletagmanager.com https://pagead2.googlesyndication.com https://googleads.g.doubleclick.net |
| img-src | https://www.googletagmanager.com https://googleads.g.doubleclick.net https://www.google.com https://pagead2.googlesyndication.com https://www.googleadservices.com https://google.com https://www.google.<TLD> |
| frame-src | https://www.googletagmanager.com |
| connect-src | https://pagead2.googlesyndication.com https://www.googleadservices.com https://googleads.g.doubleclick.net https://ad.doubleclick.net https://www.google.com https://google.com https://www.google.<TLD> |
Google Ads के उपयोगकर्ता डेटा का बीकन
सुरक्षित कॉन्टेक्स्ट में चलने के दौरान, Google Ads के उपयोगकर्ता डेटा के बीकन का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | https://www.googletagmanager.com |
| frame-src | https://www.googletagmanager.com |
| connect-src | https://google.com https://www.google.com |
Google Ads के उपयोगकर्ता डेटा का बीकन, असुरक्षित कॉन्टेक्स्ट में नहीं चलता. इसलिए, इन मामलों में सीएसपी का कॉन्फ़िगरेशन लागू नहीं होता.
Floodlight
Floodlight के उपयोगकर्ता, इन कॉन्फ़िगरेशन का इस्तेमाल करके सीएसपी चालू कर सकते हैं.
<FLOODLIGHT-CONFIG-ID> वैल्यू को, Floodlight के किसी खास विज्ञापन देने वाले व्यक्ति या कंपनी के आईडी या * से बदलें, ताकि किसी भी विज्ञापन देने वाले व्यक्ति या कंपनी के आईडी को अनुमति दी जा सके:
सभी उपयोगकर्ताओं के लिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| img-src | https://ad.doubleclick.net https://ade.googlesyndication.com https://adservice.google.com https://www.googletagmanager.com |
| frame-src | https://www.googletagmanager.com |
| connect-src | https://pagead2.googlesyndication.com https://www.google.com https://www.googleadservices.com https://ad.doubleclick.net |
"कस्टम स्क्रिप्ट" वाले बीकन के लिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| frame-src | https://<FLOODLIGHT-CONFIG-ID>.fls.doubleclick.net |
इमेज टैग के लिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| img-src | https://ad.doubleclick.net https://ade.googlesyndication.com |
Merchant Center
Merchant Center को डेटा भेजने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| script-src-elem | https://www.googletagmanager.com |
| img-src | https://*.merchant-center-analytics.goog |
| connect-src | https://*.merchant-center-analytics.goog |
सर्विस वर्कर
बेहतर मैच, उपयोगकर्ता के डेटा के बीकन, और Google Ads के कन्वर्ज़न के लिए सर्विस वर्कर का इस्तेमाल करने के लिए, सीएसपी में ये डायरेक्टिव शामिल होने चाहिए:
| डायरेक्टिव | कॉन्टेंट |
|---|---|
| frame-src | https://www.googletagmanager.com |
Tag Assistant की मदद से समस्या हल करना
कॉन्टेंट की सुरक्षा के लिए नीति (सीएसपी) से जुड़ी समस्याओं को हल करने के लिए, Tag Assistant का इस्तेमाल करें. Tag Assistant, उन रिसॉर्स की सूची दिखाएगा जिन्हें आपकी कॉन्टेंट की सुरक्षा के लिए नीति ने ब्लॉक किया है.
Tag Assistant खोलें और अपनी वेबसाइट का यूआरएल डालें. आपकी वेबसाइट एक नए टैब में खुल जाएगी.
अगर आपके पेज पर कॉन्टेंट की सुरक्षा के लिए नीति, किसी रिसॉर्स को ब्लॉक कर रही है, तो Tag Assistant के पेज की समस्याएं सेक्शन में, सीएसपी से जुड़ी समस्या दिखती है.

अपने पेज पर ब्लॉक किए गए सभी रिसॉर्स की सूची देखने के लिए, सीएसपी से जुड़ी समस्या के बगल में मौजूद समस्या देखें को चुनें.

ब्लॉक किए गए सभी रिसॉर्स को, कॉन्टेंट की सुरक्षा के लिए नीति में जोड़ें.