Cara Dasar Keselamatan Kandungan (CSP) Berfungsi
Sebagai tindak balas kepada banyak ralat berkaitan CSP yang anda hadapi, artikel ini bertujuan untuk menjelaskan cara kerja Dasar Keselamatan Kandungan dan menyediakan panduan praktikal untuk menggunakannya dengan berkesan.
Apakah itu CSP?
Dasar Keselamatan Kandungan (CSP) berfungsi sebagai pelayar- ciri keselamatan sisi yang direka untuk mengurangkan risiko serangan skrip rentas tapak (XSS). Dasar ini membolehkan anda menentukan sumber yang dibenarkan untuk memuatkan sumber seperti skrip, helaian gaya dan imej, dengan itu menghalang penyemak imbas daripada mendapatkan semula data daripada lokasi yang tidak dibenarkan.
Menggunakan Pengepala HTTP Kandungan-Keselamatan-Dasar
Untuk melaksanakan CSP di tapak web anda, anda boleh memanfaatkan pengepala HTTP Kandungan-Keselamatan-Dasar, yang mengandungi teg meta yang mengkonfigurasi parameter dasar. Tag meta ini termasuk sifat kandungan, yang mentakrifkan arahan dasar dan peraturan kebenaran sumber.
Menjawab Pertanyaan Anda
Mari kita teliti soalan yang anda bangkitkan:
1. Berbilang Sumber:
Untuk membenarkan sumber daripada berbilang sumber, cuma senaraikannya sebagai nilai yang diasingkan ruang selepas arahan:
content="default-src 'self' https://example.com/js/"
2. Arahan Pelbagai:
Arahan biasa termasuk:
3. Arahan Berbilang:
Gabungkan arahan dalam satu meta-tag dengan menggunakan koma bertitik sebagai pemisah:
content="default-src 'self' https://example.com/js/; style-src 'self'"
4. Pengendalian Port:
Membenarkan port secara eksplisit selain daripada lalai dengan menambahkan nombor port atau asterisk:
content="default-src 'self' https://ajax.googleapis.com http://example.com:123/free/stuff/"
5. Pengendalian Protokol:
Benarkan protokol bukan lalai secara eksplisit:
content="default-src 'self'; connect-src ws:; style-src 'self'"
6. file:// Protokol:
Benarkan fail:// protokol menggunakan parameter sistem fail:
content="default-src filesystem"
7. Gaya Sebaris dan Skrip:
Untuk mendayakan gaya sebaris, skrip dan teg, gunakan parameter 'sebaris tidak selamat':
content="script-src 'unsafe-inline'; style-src 'unsafe-inline'"
8. eval() Invocation:
Benarkan eval() dengan menggunakan parameter 'unsafe-eval':
content="script-src 'unsafe-eval'"
9. Tafsiran 'diri':
'diri' menandakan sumber yang berkongsi protokol, hos dan port yang sama seperti fail di mana dasar kandungan ditakrifkan:
content="default-src https://example.com"
Sila ambil perhatian bahawa 'diri' tidak membenarkan protokol tidak selamat seperti http atau fail setempat.
Petua Tambahan:
Atas ialah kandungan terperinci Bagaimanakah Dasar Keselamatan Kandungan (CSP) melindungi daripada serangan skrip rentas tapak (XSS)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!