ম্যানিফেস্ট - স্যান্ডবক্স

সতর্কতা: সংস্করণ 57 থেকে শুরু করে, ক্রোম আর স্যান্ডবক্সযুক্ত পৃষ্ঠাগুলির মধ্যে বাহ্যিক ওয়েব সামগ্রী (এম্বেড করা ফ্রেম এবং স্ক্রিপ্ট সহ) অনুমতি দেবে না৷ পরিবর্তে একটি ওয়েবভিউ ব্যবহার করুন.

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

  1. একটি স্যান্ডবক্সযুক্ত পৃষ্ঠার এক্সটেনশন বা অ্যাপ API-এ অ্যাক্সেস থাকবে না, বা স্যান্ডবক্স নয় এমন পৃষ্ঠাগুলিতে সরাসরি অ্যাক্সেস থাকবে না (এটি postMessage() এর মাধ্যমে তাদের সাথে যোগাযোগ করতে পারে)।
  2. একটি স্যান্ডবক্স করা পৃষ্ঠা বাকি অ্যাপ বা এক্সটেনশন দ্বারা ব্যবহৃত সামগ্রী নিরাপত্তা নীতি (CSP) এর অধীন নয় (এর নিজস্ব আলাদা CSP মান রয়েছে)। এর মানে হল, উদাহরণস্বরূপ, এটি ইনলাইন স্ক্রিপ্ট এবং eval ব্যবহার করতে পারে।

    উদাহরণস্বরূপ, একটি কাস্টম সিএসপি সহ একটি স্যান্ডবক্সে দুটি এক্সটেনশন পৃষ্ঠা পরিবেশন করা হবে তা এখানে কীভাবে উল্লেখ করা যায়:

    {
      ...
      "sandbox": {
        "pages": [
          "page1.html",
          "directory/page2.html"
        ]
        // content_security_policy is optional.
        "content_security_policy":
            "sandbox allow-scripts; script-src 'self'"
      ],
      ...
    }
    

    যদি নির্দিষ্ট করা না থাকে, ডিফল্ট content_security_policy মান হল sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self'; . আপনি স্যান্ডবক্সকে আরও সীমাবদ্ধ করতে আপনার CSP মান নির্দিষ্ট করতে পারেন, তবে এটিতে অবশ্যই sandbox নির্দেশিকা থাকতে হবে এবং allow-same-origin টোকেন নাও থাকতে পারে (সম্ভাব্য স্যান্ডবক্স টোকেনের জন্য HTML5 স্পেসিফিকেশন দেখুন)। এছাড়াও, আপনার নির্দিষ্ট করা CSP স্যান্ডবক্সযুক্ত পৃষ্ঠাগুলির মধ্যে বহিরাগত ওয়েব সামগ্রী লোড করার অনুমতি নাও দিতে পারে৷

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

"Chrome এক্সটেনশনে eval ব্যবহার করা হচ্ছে। নিরাপদে।" একটি স্যান্ডবক্সিং ওয়ার্কফ্লো বাস্তবায়ন সম্পর্কে আরও বিশদে যায় যা লাইব্রেরিগুলির ব্যবহারকে সক্ষম করে যা অন্যথায় এক্সটেনশনের ডিফল্ট সামগ্রী নিরাপত্তা নীতির অধীনে কার্যকর করতে সমস্যা হতে পারে৷

স্যান্ডবক্সযুক্ত পৃষ্ঠা শুধুমাত্র manifest_version 2 বা তার উপরে ব্যবহার করার সময় নির্দিষ্ট করা যেতে পারে।