ম্যানিফেস্ট - বিষয়বস্তু নিরাপত্তা নীতি

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

"এক্সটেনশন পৃষ্ঠা" নীতিটি এক্সটেনশনের পৃষ্ঠা এবং কর্মী প্রসঙ্গে প্রযোজ্য। এতে এক্সটেনশন পপআপ, ব্যাকগ্রাউন্ড ওয়ার্কার এবং এইচটিএমএল পৃষ্ঠা বা আইফ্রেম সহ ট্যাবগুলি অন্তর্ভুক্ত থাকবে যা এক্সটেনশন দ্বারা খোলা হয়েছে৷ স্যান্ডবক্স নীতিটি ম্যানিফেস্টে একটি স্যান্ডবক্স পৃষ্ঠা হিসাবে নির্দিষ্ট করা সমস্ত পৃষ্ঠাগুলিতে প্রযোজ্য।

ডিফল্ট নীতি

ম্যানিফেস্টে ব্যবহারকারীর দ্বারা বিষয়বস্তুর নিরাপত্তা নীতি সংজ্ঞায়িত না হলে, ডিফল্ট বৈশিষ্ট্যগুলি এক্সটেনশন পৃষ্ঠা এবং স্যান্ডবক্সযুক্ত এক্সটেনশন পৃষ্ঠা উভয়ের জন্যই ব্যবহার করা হবে৷

এই ডিফল্টগুলি আপনার ম্যানিফেস্টে নিম্নলিখিত নীতিগুলি নির্দিষ্ট করার সমতুল্য:

{
  // ...
  "content_security_policy": {
    "extension_pages": "script-src 'self'; object-src 'self';",
    "sandbox": "sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';"
  }
  // ...
}

এই ক্ষেত্রে, এক্সটেনশন শুধুমাত্র স্থানীয় স্ক্রিপ্ট এবং বস্তুগুলিকে নিজস্ব প্যাকেজ করা সংস্থানগুলি থেকে লোড করবে৷ WebAssembly অক্ষম করা হবে, এবং এক্সটেনশনটি ইনলাইন জাভাস্ক্রিপ্ট চালাবে না বা এক্সিকিউটেবল কোড হিসাবে স্ট্রিংগুলিকে মূল্যায়ন করতে সক্ষম হবে না। যদি একটি স্যান্ডবক্স পৃষ্ঠা যোগ করা হয়, তবে এটি এক্সটেনশনের বাইরে থেকে স্ক্রিপ্ট মূল্যায়ন করার জন্য আরও স্বাচ্ছন্দ্যের অনুমতি পাবে।

ন্যূনতম এবং কাস্টমাইজড বিষয়বস্তু নিরাপত্তা নীতি

ডেভেলপাররা তাদের এক্সটেনশনের জন্য নিয়ম যোগ করতে বা মুছে ফেলতে পারে, অথবা তাদের প্রজেক্টের চাহিদা পূরণ করতে ন্যূনতম প্রয়োজনীয় বিষয়বস্তু নিরাপত্তা নীতি ব্যবহার করতে পারে।

এক্সটেনশন পেজ নীতি

ক্রোম এক্সটেনশন পৃষ্ঠাগুলির জন্য একটি ন্যূনতম সামগ্রী নিরাপত্তা নীতি প্রয়োগ করে৷ এটি আপনার ম্যানিফেস্টে নিম্নলিখিত নীতি উল্লেখ করার সমতুল্য:

{
  // ...
  "content_security_policy": {
    "extension_pages": "script-src 'self' 'wasm-unsafe-eval'; object-src 'self';"
  }
  // ...
}

extension_pages নীতি এই ন্যূনতম মানের বাইরে শিথিল করা যাবে না। অন্য কথায়, আপনি নির্দেশাবলীতে অন্যান্য স্ক্রিপ্ট উত্স যোগ করতে পারবেন না, যেমন script-src'unsafe-eval' যোগ করা। আপনি যদি আপনার এক্সটেনশনের নীতিতে একটি অননুমোদিত উত্স যোগ করেন, Chrome ইনস্টলের সময় এইরকম একটি ত্রুটি ছুঁড়বে:

'content_security_policy.extension_pages': Insecure CSP value "'unsafe-eval'" in directive 'script-src'.

স্যান্ডবক্স পৃষ্ঠা নীতি

স্যান্ডবক্সযুক্ত পৃষ্ঠাগুলির জন্য ডিফল্ট নীতিটি এক্সটেনশন পৃষ্ঠাগুলির তুলনায় অনেক বেশি নম্র, কারণ স্যান্ডবক্স পৃষ্ঠার এক্সটেনশন API-এ অ্যাক্সেস নেই, বা অ-স্যান্ডবক্সযুক্ত পৃষ্ঠাগুলিতে সরাসরি অ্যাক্সেস নেই৷ স্যান্ডবক্স সামগ্রী নিরাপত্তা নীতি প্রয়োজন অনুযায়ী কাস্টমাইজ করা যেতে পারে।