একটি বিষয়বস্তু নিরাপত্তা নীতির সাথে একীভূত করুন

কন্টেন্ট সিকিউরিটি পলিসি (সিএসপি) হল আপনার ওয়েব পৃষ্ঠাকে সুরক্ষিত করার একটি মাধ্যম যা রিসোর্স এবং স্ক্রিপ্টগুলিকে লোড এবং এক্সিকিউট করার অনুমতি দেওয়া হয়েছে তা সীমিত করে। আপনি আপনার ওয়েব সার্ভার থেকে HTTP প্রতিক্রিয়াগুলিতে একটি Content-Security-Policy শিরোনাম সেট করে CSP সক্ষম করতে পারেন৷

CSP কনফিগার করার দুটি আদর্শ উপায় আছে:

  1. পৃষ্ঠায় তাদের সংস্থানগুলি ইনজেক্ট করতে পারে এমন ডোমেনগুলির একটি অনুমোদিত তালিকা নির্দিষ্ট করুন৷

  2. একটি এলোমেলো নন্স নির্দিষ্ট করুন, যার সাথে লোড করার জন্য পৃষ্ঠার সংস্থানগুলি চিহ্নিত করা আবশ্যক৷ এই পদ্ধতিটি কঠোর CSP নামে পরিচিত।

যেহেতু Google Publisher Tag (GPT) যে ডোমেনগুলি ব্যবহার করে সময়ের সাথে সাথে পরিবর্তিত হয়, আমরা শুধুমাত্র কঠোর CSP (বিকল্প 2) সমর্থন করি৷ এই পদ্ধতিটি ডোমেনগুলির একটি রোলিং তালিকা বজায় রাখার প্রয়োজনীয়তাকে সরিয়ে দেয় যা পুরানো হয়ে যেতে পারে এবং আপনার সাইটটি ভেঙে যেতে পারে।

GPT এর সাথে CSP সেট আপ করা হচ্ছে

  1. আপনার ওয়েব সার্ভারে CSP সক্ষম করুন।

    CSP শিরোনাম সেট আপ করতে কঠোর CSP গ্রহণ করার জন্য বর্ণিত ধাপগুলি অনুসরণ করুন এবং gpt.js সহ আপনার পৃষ্ঠার প্রতিটি স্ক্রিপ্ট ট্যাগে ননস প্রয়োগ করুন। GPT বিশেষভাবে নিম্নলিখিত 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/
    

    এটি আপনার ব্যবহারের ক্ষেত্রে উপযুক্ত হলে আপনি একটি আরও অনুমতিমূলক নীতি চয়ন করতে পারেন। আরও বিধিনিষেধমূলক নীতিগুলি বিজ্ঞপ্তি ছাড়াই ভেঙ্গে যেতে পারে।

  2. ক্রস-ডোমেন রেন্ডারিং সক্ষম করুন৷

    বিজ্ঞাপন আইফ্রেমগুলি বাহ্যিক সংস্থানগুলি লোড করতে পারে যা CSP দ্বারা অনুমোদিত নাও হতে পারে৷ যেহেতু একই ডোমেইন আইফ্রেমগুলি শীর্ষ স্তরের উইন্ডোর CSP-এর উত্তরাধিকারী, এবং GPT ক্রিয়েটিভের বিষয়বস্তু নিয়ন্ত্রণ করতে পারে না, একই-ডোমেন ক্রিয়েটিভগুলি সাধারণত CSP শিরোনামগুলির সাথে সঠিকভাবে কাজ করবে না৷

    সমস্ত ক্রিয়েটিভের জন্য ক্রস ডোমেন রেন্ডারিং সক্ষম করতে, কোনো বিজ্ঞাপন স্লট লোড করার আগে googletag.pubads().setForceSafeFrame(true)

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

পরীক্ষামূলক

আমরা সুপারিশ করছি যে আপনি বিষয়বস্তু-নিরাপত্তা-নীতির পরিবর্তে Content-Security-Policy Content-Security-Policy-Report-Only শিরোনাম সেট করে প্রথমে আপনার নীতিগুলি পরীক্ষা করুন৷ শিরোনাম লঙ্ঘনের প্রতিবেদন করে কিন্তু তবুও পৃষ্ঠায় তাদের অনুমতি দেয়।