उन एक्सटेंशन पेजों के कलेक्शन के बारे में बताता है जिन्हें सैंडबॉक्स किए गए यूनीक ऑरिजिन में दिखाना है. कॉन्टेंट बनाने
किसी एक्सटेंशन के सैंडबॉक्स किए गए पेजों के लिए इस्तेमाल की जाने वाली कॉन्टेंट की सुरक्षा नीति के बारे में
"content_security_policy"
कुंजी.
सैंडबॉक्स में होने के दो फ़ायदे हैं:
- सैंडबॉक्स किए गए पेज के पास, एक्सटेंशन एपीआई या सीधे तौर पर ऐक्सेस करने का ऐक्सेस नहीं होगा
ऐसे पेज जिन्हें सैंडबॉक्स नहीं किया गया है (ये
postMessage()
का इस्तेमाल करके, इन पेजों से संपर्क कर सकते हैं). - सैंडबॉक्स किया गया पेज, कॉन्टेंट की सुरक्षा के बारे में नीति (सीएसपी) के दायरे में नहीं आता है. इसका इस्तेमाल बाकी संगठन करते हैं
एक्सटेंशन (इसकी अपनी सीएसपी वैल्यू अलग है). इसका मतलब है कि उदाहरण के लिए, यह
इनलाइन स्क्रिप्ट और
eval()
का इस्तेमाल करें.
उदाहरण के लिए, यहां यह निर्दिष्ट करने का तरीका बताया गया है कि दो एक्सटेंशन पेजों को एक सैंडबॉक्स में कस्टम सीएसपी:
{
...
"content_security_policy": {
"sandbox": "sandbox allow-scripts; script-src 'self' https://example.com"
},
"sandbox": {
"pages": [
"page1.html",
"directory/page2.html"
]
},
...
}
अगर इसके बारे में तय नहीं किया गया है, तो "content_security_policy"
की डिफ़ॉल्ट वैल्यू sandbox allow-scripts allow-forms
allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';
है.
सैंडबॉक्स को और सीमित करने के लिए, सीएसपी वैल्यू तय की जा सकती है. हालांकि, इसमें
"sandbox"
डायरेक्टिव और इसमें allow-same-origin
टोकन नहीं होना चाहिए (HTML5 देखें
स्पेसिफ़िकेशन को ध्यान में रखकर बनाया गया है.
ध्यान दें कि आपको सिर्फ़ उन पेजों की सूची बनानी होगी जिनके विंडो या फ़्रेम में लोड होने की उम्मीद है. रिसोर्स
जिन पेजों का इस्तेमाल सैंडबॉक्स किए गए पेजों (जैसे कि स्टाइलशीट या JavaScript सोर्स फ़ाइलें) करते हैं उन्हें
pages
सूची बनाता है, क्योंकि वे उस फ़्रेम के सैंडबॉक्स का इस्तेमाल करेंगे जिसमें उन्हें जोड़ा गया है.
"Chrome एक्सटेंशन में eval() का इस्तेमाल करना", तो लागू करने के बारे में ज़्यादा जानकारी देता है सैंडबॉक्सिंग वर्कफ़्लो, जिसकी मदद से ऐसी लाइब्रेरी का इस्तेमाल किया जा सकता है जिन्हें लागू करने में समस्या आ सकती है एक्सटेंशन की कॉन्टेंट की सुरक्षा के लिए डिफ़ॉल्ट नीति.