এই নিবন্ধে কন্টেন্ট সুরক্ষা সংক্রান্ত নীতি (CSP) সম্পর্কে ও তা আপনার AdSense বিজ্ঞাপন কোডের সাথে কীভাবে ইন্টিগ্রেট করবেন সেই বিবরণ দেওয়া হয়েছে। মনে রাখবেন, প্রকাশকদের CSP ব্যবহারের প্রয়োজন নেই। আপনি CSP ব্যবহার করতে চাইলে, CSP চালু করার সময় আপনার AdSense কোড সঠিকভাবে কাজ করছে কিনা তা নিশ্চিত করতে নিচের ধাপগুলি অনুসরণ করুন।
CSP কী
কন্টেন্ট সুরক্ষা সংক্রান্ত নীতি (CSP) হল আপনার ওয়েব পৃষ্ঠাকে সুরক্ষিত করার একটি মাধ্যম যা কোন কোন রিসোর্স এবং স্ক্রিপ্ট লোড ও এক্সিকিউট করার অনুমতি রয়েছে তা সীমিত করে। আপনার ওয়েব সার্ভারের HTTP রেসপন্সের হেডারে Content-Security-Policy সেট-আপ করে আপনি CSP চালু করুন।
CSP কনফিগার করার দুটি সাধারণ পদ্ধতি রয়েছে:
- পৃষ্ঠায় রিসোর্স যোগ করতে পারে এমন ডোমেনগুলির একটি সাদাতালিকা নির্দিষ্ট করুন।
- একটি র্যান্ডম নোন্স উল্লেখ করুন যার সাহায্যে পৃষ্ঠার রিসোর্স লোড করার জন্য চিহ্নিত করা হবে। এই ধরনটি স্ট্রিক্ট CSP নামে পরিচিত।
যেহেতু AdSense বিজ্ঞাপন কোড যে ডোমেনগুলি ব্যবহার করে তা সময়ের সাথে সাথে পরিবর্তিত হয়, তাই আমরা কেবল স্ট্রিক্ট CSP (বিকল্প ২) ব্যবহার করি। এই পদ্ধতির ফলে সাইটের ক্ষতি করতে পারে এমন মেয়াদ ফুরিয়ে যাওয়া ডোমেনগুলির রোলিং তালিকা বজায় রাখার প্রয়োজন হয় না।
AdSense বিজ্ঞাপন কোডের মাধ্যমে স্ট্রিক্ট CSP সেট-আপ করা
আপনার ওয়েব সার্ভারে CSP চালু করতে স্ট্রিক্ট CSP ব্যবহার করুন লিঙ্কে দেওয়া ধাপগুলি অনুসরণ করুন। এতে CSP হেডার সেট-আপের পদ্ধতি এবং AdSense কোড সহ আপনার পৃষ্ঠার সব স্ক্রিপ্ট ট্যাগে নোন্স কীভাবে প্রয়োগ করবেন তার বিবরণ রয়েছে। AdSense কোডে নিচে উল্লেখ করা CSP ডাইরেক্টিভগুলি বিশেষভাবে কাজ করে:
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/আপনি যেভাবে ব্যবহার করেন তা উপযুক্ত হলে আরও অনুমতিমূলক নীতি বেছে নিতে পারেন। আরও বিধিনিষেধযুক্ত নীতিগুলি কোনও বিজ্ঞপ্তি ছাড়াই প্রযুক্ত হতে পারে।
কোডের উদাহরণ
স্ট্রিক্ট CSP সহ AdSense কোডের উদাহরণ এখানে দেওয়া হল:
<script nonce="${nonce}" async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1234&host=ca-host-pub-5678" crossorigin="anonymous">
</script>
<ins class="adsbygoogle"
style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-1234"
data-ad-host="ca-host-pub-5678">
</ins>
<script nonce="${nonce}">
(adsbygoogle = window.adsbygoogle || []).push({});
</script>পরীক্ষা করা
আমাদের সাজেশন হল, প্রথমে আপনি Content-Security-Policy কোডের পরিবর্তে Content-Security-Policy-Report-Only হেডার সেট করে নীতি পরীক্ষা করুন। হেডারটি নীতি লঙ্ঘনের রিপোর্ট করলেও পৃষ্ঠায় সেগুলিকে অনুমতি দেয়।