Akhir-akhir ini, beberapa situs web seperti Facebook menggunakan Kebijakan Keamanan Konten (CSP) untuk membatasi pemuatan skrip dari "sumber yang tidak dipercaya". Misalnya, ketika meminta konten HTML Facebook (mis. Https://www.facebook.com ), respons HTTP Facebook mencakup header respons berikut:
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;
Ini berdampak pada beberapa bookmarklet yang perlu memuat dan mengeksekusi perpustakaan Javascript dari sumber yang tidak dipercaya.
Misalnya, setiap kali saya mencoba menjalankan bookmarklet Show Anchors pada halaman Facebook, eksekusi bookmarklet ini gagal saat mencoba memuat jQuery dari sumber yang tidak terpercaya. Di konsol Pengembang Chrome, ia akan mengatakan:
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".
Saya telah menemukan halaman dokumentasi Chrome tentang topik ini, tetapi itu hanya berlaku untuk ekstensi Chrome .
Saya mencari solusi yang memungkinkan saya
- baik untuk sekali waktu menonaktifkan CSP
- atau daftar putih sumber terpercaya saya secara permanen.