Nagłówki HTTP
Znaczenie nagłówka HTTP Content-Security-Policy
Content-Security-Policy ogranicza, skąd mogą się ładować zasoby strony.
Znaczenie
Serwer wysyła egzekwowane przez przeglądarkę reguły dla skryptów, stylów, obrazów, ramek i innych typów zasobów.
Gdzie się pojawia
Aplikacje internetowe wysyłają go, aby ograniczyć ryzyko wstrzykiwania skryptów, clickjackingu, mieszanej treści i wycieku danych.
Co sprawdzić
Sprawdź raporty o zablokowanych zasobach, strategię nonce lub hash, reguły ramek oraz to, czy polityka nie jest zbyt szeroka.
Przykład
Content-Security-Policy: default-src https:; img-src https: data:Częste wartości i dyrektywy
default-srcdefault-src 'self'Zapasowa lista źródeł dla dyrektyw fetch, które nie są ustawione bardziej szczegółowo.script-srcscript-src 'self' https://cdn.exampleKontroluje, skąd może się ładować JavaScript i które wzorce skryptów inline mogą działać.style-srcstyle-src 'self' 'unsafe-inline'Kontroluje, skąd może się ładować CSS i jak obsługiwane są style inline.img-srcimg-src https: data:Kontroluje, skąd mogą się ładować obrazy.connect-srcconnect-src 'self' https://api.exampleKontroluje adresy URL używane przez fetch, XHR, WebSocket, EventSource i podobne interfejsy API.font-srcfont-src https://fonts.exampleKontroluje, skąd mogą się ładować czcionki.frame-srcframe-src 'self'Kontroluje, które adresy URL ta strona może ładować do ramek.frame-ancestorsframe-ancestors 'none'Kontroluje, które strony nadrzędne mogą osadzić tę stronę w ramce.base-uribase-uri 'self'Ogranicza, które adresy URL mogą być użyte w elemencie base.object-srcobject-src 'none'Kontroluje zasoby typu object, embed i applet.report-toreport-to defaultNazywa grupę punktów końcowych raportowania dla zgłoszeń naruszeń polityki.report-urireport-uri https://example.com/csp-reportWysyła zgłoszenia naruszeń polityki na adres URL; nowsze polityki często używają report-to.
Źródła
- Specyfikacja
- Content Security Policy Level 3
- Przewodnik
- MDN Content-Security-Policy