हाल ही में, कुछ वेबसाइटें जैसे कि फेसबुक "कंट्रोल्ड सोर्स" से स्क्रिप्ट्स को लोड करने से रोकने के लिए कंटेंट सिक्योरिटी पॉलिसी (CSP) का उपयोग करती हैं । उदाहरण के लिए, फेसबुक HTML सामग्री का अनुरोध करते समय (उदाहरण https://www.facebook.com ), फेसबुक की HTTP प्रतिक्रिया में निम्नलिखित प्रतिक्रिया हेडर शामिल हैं:
x-webkit-csp:default-src *;script-src https://*.facebook.com http://*.facebook.com https://*.fbcdn.net http://*.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* chrome-extension://lifbcibllhkdhoafpjfnlhfpfgnpldfl 'unsafe-inline' 'unsafe-eval' https://*.akamaihd.net http://*.akamaihd.net;style-src * 'unsafe-inline';connect-src https://*.facebook.com http://*.facebook.com https://*.fbcdn.net http://*.fbcdn.net *.facebook.net *.spotilocal.com:* https://*.akamaihd.net ws://*.facebook.com:* http://*.akamaihd.net;
इसके कुछ बुकमार्कलेट पर प्रभाव पड़ता है, जिन्हें अविश्वसनीय स्रोतों से जावास्क्रिप्ट पुस्तकालयों को लोड करने और निष्पादित करने की आवश्यकता होती है।
उदाहरण के लिए, जब भी मैं फेसबुक पेज पर शो एंकर बुकमार्कलेट चलाने की कोशिश करता हूं, तो इस बुकमार्कलेट का निष्पादन विफल हो जाता है क्योंकि यह एक अविश्वसनीय स्रोत से jQuery को लोड करने की कोशिश करता है। Chrome के डेवलपर कंसोल में, यह कहेंगे:
Refused to load the script 'http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js' because it violates the following Content Security Policy directive: "script-src https://*.facebook.com http://*.facebook.com https://*.fbcdn.net http://*.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* chrome-extension://lifbcibllhkdhoafpjfnlhfpfgnpldfl 'unsafe-inline' 'unsafe-eval' https://*.akamaihd.net http://*.akamaihd.net".
मुझे इस विषय के बारे में एक क्रोम प्रलेखन पृष्ठ मिला है, लेकिन यह केवल क्रोम एक्सटेंशन पर लागू होता है ।
मैं उन समाधानों की तलाश में हूं जो मुझे अनुमति देते हैं
- या तो एक बार के लिए CSP को निष्क्रिय करें
- या मेरे विश्वसनीय स्रोतों को स्थायी रूप से श्वेत सूची में लाने के लिए।