चेतावनी: Chrome के 57वें वर्शन से, सैंडबॉक्स किए गए पेजों में बाहरी वेब कॉन्टेंट (इसमें एम्बेड किए गए फ़्रेम और स्क्रिप्ट शामिल हैं) को अनुमति नहीं दी जाएगी. इसके बजाय, कृपया webview का इस्तेमाल करें.
यह ऐप्लिकेशन या एक्सटेंशन पेजों का ऐसा कलेक्शन तय करता है जिसे सैंडबॉक्स किए गए यूनीक ऑरिजिन में दिखाया जाना है. साथ ही, यह इनके साथ इस्तेमाल की जाने वाली कॉन्टेंट सिक्योरिटी पॉलिसी भी तय करता है. सैंडबॉक्स में होने के दो मतलब हैं:
- सैंडबॉक्स किए गए पेज के पास एक्सटेंशन या ऐप्लिकेशन एपीआई का ऐक्सेस नहीं होगा. साथ ही, उसके पास सैंडबॉक्स नहीं किए गए पेजों का सीधा ऐक्सेस भी नहीं होगा. हालांकि, वह
postMessage()के ज़रिए उनसे कम्यूनिकेट कर सकता है. सैंडबॉक्स किए गए पेज पर, ऐप्लिकेशन या एक्सटेंशन के बाकी हिस्सों में इस्तेमाल की गई कॉन्टेंट सिक्योरिटी पॉलिसी (सीएसपी) लागू नहीं होती. इसकी अपनी अलग सीएसपी वैल्यू होती है. इसका मतलब है कि उदाहरण के लिए, यह इनलाइन स्क्रिप्ट और
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';होती है. सैंडबॉक्स को और भी ज़्यादा सीमित करने के लिए, अपनी सीएसएपी वैल्यू तय की जा सकती है. हालांकि, इसमेंsandboxडायरेक्टिव होना चाहिए औरallow-same-originटोकन नहीं होना चाहिए. संभावित सैंडबॉक्स टोकन के लिए, HTML5 स्पेसिफ़िकेशन देखें. इसके अलावा, आपने जो सीएसपी तय की है वह सैंडबॉक्स किए गए पेजों में बाहरी वेब कॉन्टेंट लोड करने की अनुमति नहीं दे सकती.
ध्यान दें कि आपको सिर्फ़ उन पेजों को लिस्ट करना है जिन्हें विंडो या फ़्रेम में लोड किया जाना है. सैंडबॉक्स किए गए पेजों में इस्तेमाल किए गए संसाधनों (जैसे, स्टाइलशीट या JavaScript सोर्स फ़ाइलें) को sandboxed_page सूची में शामिल करने की ज़रूरत नहीं है. ये संसाधन, उन्हें एम्बेड करने वाले पेज के सैंडबॉक्स का इस्तेमाल करेंगे.
"Using eval in Chrome Extensions. सुरक्षित तरीके से." में सैंडबॉक्सिंग वर्कफ़्लो लागू करने के बारे में ज़्यादा जानकारी दी गई है. इससे उन लाइब्रेरी का इस्तेमाल किया जा सकता है जिन्हें एक्सटेंशन की डिफ़ॉल्ट कॉन्टेंट सुरक्षा नीति के तहत लागू करने में समस्याएं आती हैं.
सैंडबॉक्स किए गए पेज को सिर्फ़ manifest_version 2 या इसके बाद के वर्शन का इस्तेमाल करते समय तय किया जा सकता है.