Atur Permissions-Policy
Header web · sekitar 5 menit
Dengan bahasa sederhana
Kunci fitur browser yang sensitif (kamera, mikrofon, lokasi, pembayaran) yang tidak dibutuhkan situs Anda, supaya kode sisipan atau pihak ketiga tidak bisa memintanya.
Apa risikonya
Skrip pihak ketiga atau hasil injeksi bisa meminta akses kamera, mikrofon, atau lokasi atas nama situs Anda.
Cara memperbaikinya
Pilih platform yang dipakai situs Anda. Tidak yakin? Teruskan halaman ini ke pengelola website Anda.
Nginx
# inside the server { } block
add_header Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=(), usb=()" always;Apache / .htaccess
<IfModule mod_headers.c>
Header always set Permissions-Policy "camera=(), microphone=(), geolocation=(), payment=(), usb=()"
</IfModule>Cloudflare
Rules → Transform Rules → Modify Response Header
Set static: Permissions-Policy = camera=(), microphone=(), geolocation=(), payment=(), usb=()
# Cloudflare Pages: add to public/_headers
/*
Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=()Vercel
// vercel.json
{ "headers": [ { "source": "/(.*)", "headers": [
{ "key": "Permissions-Policy", "value": "camera=(), microphone=(), geolocation=(), payment=(), usb=()" }
] } ] }Netlify
# public/_headers
/*
Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=()WordPress
// functions.php (child theme) — or use your security plugin's "HTTP headers" setting
add_action('send_headers', function () {
header('Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=(), usb=()');
});Sebelum mengubah apa pun: Jangan masukkan fitur yang memang dipakai situs Anda (mis. hapus geolocation=() jika ada pencari lokasi toko).
Pastikan sudah berhasil
Jalankan ulang cek ProbeHunt.