একটি বিষয়বস্তু নিরাপত্তা নীতির সাথে ট্যাগ ম্যানেজার ব্যবহার করুন

কন্টেন্ট সিকিউরিটি পলিসি (সিএসপি) একটি বহুল সমর্থিত ওয়েব নিরাপত্তা মান, যা ডেভেলপারদের তাদের অ্যাপ্লিকেশন দ্বারা লোড করা রিসোর্সগুলোর উপর নিয়ন্ত্রণ দিয়ে নির্দিষ্ট ধরণের ইনজেকশন-ভিত্তিক আক্রমণ প্রতিরোধ করার উদ্দেশ্যে তৈরি। সিএসপি ব্যবহারকারী সাইটগুলিতে কীভাবে গুগল ট্যাগ ম্যানেজার স্থাপন করতে হয়, তা বুঝতে এই নির্দেশিকাটি ব্যবহার করুন।

কন্টেইনার ট্যাগটি CSP ব্যবহার করার জন্য সক্রিয় করুন।

CSP সহ কোনো পেজে গুগল ট্যাগ ম্যানেজার ব্যবহার করতে হলে, CSP-টিকে অবশ্যই আপনার ট্যাগ ম্যানেজার কন্টেইনার কোড চালানোর অনুমতি দিতে হবে। এই কোডটি ইনলাইন জাভাস্ক্রিপ্ট কোড হিসেবে তৈরি করা হয় যা gtm.js স্ক্রিপ্টটি ইনজেক্ট করে। এটি করার বিভিন্ন উপায় আছে, যেমন ননস (nonce) বা হ্যাশ (hash) ব্যবহার করা। প্রস্তাবিত পদ্ধতি হলো একটি ননস (nonce) ব্যবহার করা, যা এমন একটি র‍্যান্ডম ভ্যালু হওয়া উচিত যা অনুমান করা যায় না এবং সার্ভার প্রতিটি রেসপন্সের জন্য আলাদাভাবে তৈরি করে। Content-Security-Policy-এর script-src-elem ডিরেক্টিভে nonce-{SERVER-GENERATED-NONCE} হিসেবে ননস ভ্যালুটি দিন এবং ইনলাইন ট্যাগ ম্যানেজার কন্টেইনার কোডের ননস-অ্যাওয়ার (nonce-aware) সংস্করণটি ব্যবহার করুন। ইনলাইন স্ক্রিপ্ট এলিমেন্টের nonce অ্যাট্রিবিউটটিকেও এই একই ভ্যালুতে সেট করুন:

<!-- 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 -->

এরপর ট্যাগ ম্যানেজার পেজে যোগ করা যেকোনো স্ক্রিপ্টে ননসটি ছড়িয়ে দেবে।

ইনলাইন স্ক্রিপ্ট চালানো সক্ষম করার জন্য আরও কিছু পদ্ধতি রয়েছে, যেমন CSP-তে ইনলাইন স্ক্রিপ্টটির হ্যাশ সরবরাহ করা।

যদি প্রস্তাবিত ননস (nonce) বা হ্যাশ (hash) পদ্ধতিগুলো ব্যবহারযোগ্য না হয়, তবে CSP-এর script-src-elem সেকশনে 'unsafe-inline' ডিরেক্টিভটি যোগ করে ট্যাগ ম্যানেজার ইনলাইন স্ক্রিপ্টটি সক্রিয় করা যেতে পারে।

এই পদ্ধতিটি ব্যবহার করার জন্য CSP-কে নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com 'unsafe-inline'
img-src https://www.googletagmanager.com
connect-src https://www.googletagmanager.com https://www.google.com

কাস্টম জাভাস্ক্রিপ্ট ভেরিয়েবল

কাস্টম জাভাস্ক্রিপ্ট ভেরিয়েবল যেভাবে প্রয়োগ করা হয়, তার কারণে কোনো CSP-এর উপস্থিতিতে সেগুলোর undefined 'unsafe-eval' হিসেবে গণ্য হবে, যদি না CSP-এর script-src অংশে 'unsafe-eval' নির্দেশিকাটি দেওয়া থাকে।

নির্দেশিকা বিষয়বস্তু
script-src 'unsafe-eval'

প্রিভিউ মোড

গুগল ট্যাগ ম্যানেজারের প্রিভিউ মোড ব্যবহার করার জন্য, সিএসপি-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
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:

গুগল অ্যানালিটিক্স

গুগল অ্যানালিটিক্স ব্যবহার করার জন্য, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com
img-src https://www.googletagmanager.com https://*.google-analytics.com https://*.google.com https://*.google.<TLD> https://*.g.doubleclick.net
connect-src https://www.googletagmanager.com https://*.google-analytics.com https://*.google.com https://*.google.<TLD> https://*.g.doubleclick.net https://pagead2.googlesyndication.com
frame-src https://www.googletagmanager.com

কোনো বিজ্ঞাপন বৈশিষ্ট্য ছাড়া গুগল অ্যানালিটিক্স ব্যবহার করতে হলে, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com
img-src https://www.googletagmanager.com https://*.google-analytics.com
connect-src https://www.googletagmanager.com https://*.google-analytics.com https://*.google.com

Google Ads Conversion, Remarketing, বা Conversion Linker ট্যাগ ব্যবহার করার জন্য, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com https://www.googleadservices.com https://www.google.com
img-src https://www.googletagmanager.com https://www.googleadservices.com https://googleads.g.doubleclick.net https://pagead2.googlesyndication.com https://www.google.com https://www.google.<TLD>
connect-src https://www.googletagmanager.com https://www.googleadservices.com https://googleads.g.doubleclick.net https://pagead2.googlesyndication.com https://www.google.com https://www.google.<TLD> https://ad.doubleclick.net
frame-src https://www.googletagmanager.com

সুরক্ষিত প্রেক্ষাপটে চালানোর সময় গুগল অ্যাডস ব্যবহারকারীর ডেটা বীকন ব্যবহার করতে হলে, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com
connect-src https://www.google.com
frame-src https://www.googletagmanager.com

গুগল অ্যাডস ইউজার ডেটা বীকন অসুরক্ষিত প্রেক্ষাপটে চলে না, তাই সেইসব ক্ষেত্রে CSP কনফিগারেশন প্রযোজ্য নয়।

ফ্লাডলাইট

ফ্লাডলাইট ব্যবহার করার জন্য, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলোর অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
img-src https://www.googletagmanager.com https://ad.doubleclick.net https://ade.googlesyndication.com https://adservice.google.com
connect-src https://pagead2.googlesyndication.com https://www.google.com https://www.googleadservices.com https://ad.doubleclick.net
frame-src https://www.googletagmanager.com

ফ্ল্যাডলাইট কাস্টম স্ক্রিপ্ট ব্যবহার করার জন্য, CSP-কে অবশ্যই (পূর্ববর্তীটির পাশাপাশি) নিম্নলিখিত বিষয়গুলোরও অনুমতি দিতে হবে:

নির্দেশিকা বিষয়বস্তু
frame-src https://*.fls.doubleclick.net

মার্চেন্ট সেন্টার

মার্চেন্ট সেন্টার ব্যবহার করার জন্য, সিএসপি-কে অবশ্যই নিম্নলিখিত বিষয়গুলো অনুমোদন করতে হবে:

নির্দেশিকা বিষয়বস্তু
script-src-elem https://www.googletagmanager.com
img-src https://*.merchant-center-analytics.goog
connect-src https://*.merchant-center-analytics.goog

পরিষেবা কর্মী

এনহ্যান্সড ম্যাচ, ইউজার ডেটা বিকন এবং অ্যাডস কনভার্সনের জন্য সার্ভিস ওয়ার্কার ব্যবহার করতে হলে, CSP-কে অবশ্যই নিম্নলিখিত বিষয়গুলো অনুমোদন করতে হবে:

নির্দেশিকা বিষয়বস্তু
frame-src https://www.googletagmanager.com

ট্যাগ অ্যাসিস্ট্যান্টের সাহায্যে সমস্যা সমাধান করুন

কন্টেন্ট সিকিউরিটি পলিসি (CSP) সংক্রান্ত সমস্যা সমাধান করতে ট্যাগ অ্যাসিস্ট্যান্ট ব্যবহার করুন। ট্যাগ অ্যাসিস্ট্যান্ট আপনার কন্টেন্ট সিকিউরিটি পলিসি দ্বারা ব্লক করা রিসোর্সগুলির তালিকা প্রদর্শন করবে।

  1. ট্যাগ অ্যাসিস্ট্যান্ট খুলুন এবং আপনার ওয়েবসাইটের ইউআরএল (URL) লিখুন। আপনার ওয়েবসাইটসহ একটি নতুন ট্যাব খুলে যাবে।

  2. আপনার পেজের কন্টেন্ট সিকিউরিটি পলিসি (Content Security Policy) যদি কোনো রিসোর্সকে ব্লক করে, তাহলে ট্যাগ অ্যাসিস্ট্যান্টের (Tag Assistant) পেজ ইস্যু (Page issues) সেকশনে একটি সিএসপি (CSP) ইস্যু দেখানো হয়।

    ট্যাগ অ্যাসিস্ট্যান্টের স্ক্রিনশটে CSP সমস্যা দেখা যাচ্ছে

  3. আপনার পেজে ব্লক করা সমস্ত রিসোর্সের তালিকা দেখতে, CSP ইস্যুটির পাশে থাকা 'View issue' নির্বাচন করুন। ট্যাগ অ্যাসিস্ট্যান্টের স্ক্রিনশট যেখানে সিএসপি ইস্যু স্লাইডারটি দেখা যাচ্ছে

  4. আপনার কন্টেন্ট সিকিউরিটি পলিসিতে ব্লক করা সমস্ত রিসোর্স যোগ করুন।