Przejdź do głównej treści

Dokumentacja

Raporty CSP — przewodnik konfiguracji i integracji

SiteGuardian zawiera wbudowany endpoint do przyjmowania naruszeń Content-Security-Policy oraz zdarzeń Reporting-API. Wystarczy skierować tam CSP, a naruszenia zgłaszane przez przeglądarki pojawią się w panelu monitora w ciągu kilku sekund.

1. Włącz w monitorze

Na stronie szczegółów monitora otwórz zakładkę CSP Reports i kliknij Włącz. Wygenerujemy świeży adres URL podpisany HMAC oraz gotowy do wklejenia fragment nagłówków.

2. Wklej nagłówki

Fragment zawiera trzy nagłówki. Przeglądarki obsługują je z bezpiecznym fallbackiem — można wdrożyć wszystkie trzy jednocześnie.

nginx

add_header Content-Security-Policy "default-src 'self'; report-uri https://reports.siteguardian.io/r/{monitor_id}/{hmac}; report-to sg-csp" always;
add_header Reporting-Endpoints 'sg-csp="https://reports.siteguardian.io/r/{monitor_id}/{hmac}"' always;
add_header Report-To '{"group":"sg-csp","max_age":10886400,"endpoints":[{"url":"https://reports.siteguardian.io/r/{monitor_id}/{hmac}"}]}' always;

Apache

Header always set Content-Security-Policy "default-src 'self'; report-uri https://reports.siteguardian.io/r/{monitor_id}/{hmac}; report-to sg-csp"
Header always set Reporting-Endpoints 'sg-csp="https://reports.siteguardian.io/r/{monitor_id}/{hmac}"'
Header always set Report-To '{"group":"sg-csp","max_age":10886400,"endpoints":[{"url":"https://reports.siteguardian.io/r/{monitor_id}/{hmac}"}]}'

Caddy

header {
    Content-Security-Policy "default-src 'self'; report-uri https://reports.siteguardian.io/r/{monitor_id}/{hmac}; report-to sg-csp"
    Reporting-Endpoints `sg-csp="https://reports.siteguardian.io/r/{monitor_id}/{hmac}"`
    Report-To `{"group":"sg-csp","max_age":10886400,"endpoints":[{"url":"https://reports.siteguardian.io/r/{monitor_id}/{hmac}"}]}`
}

3. Zweryfikuj

Otwórz stronę w prawdziwej przeglądarce. W ciągu kilku sekund w zakładce CSP Reports pojawi się pierwszy bucket. Jeśli zakładka pozostaje pusta, potwierdzi to też kolejny skan nagłówków — zielona plakietka pojawia się, gdy wykryjemy Twoje CSP wskazujące nasz endpoint.

Tryb Report-Only

Zupełnie nowe CSP? Wdróż je najpierw w trybie Report-Only — nic nie jest faktycznie blokowane, ale naruszenia są raportowane. Zmień nazwę nagłówka, zachowując te same dyrektywy:

Content-Security-Policy-Report-Only: default-src 'self'; report-uri https://reports.siteguardian.io/r/{monitor_id}/{hmac}

Co przechowujemy — i czego nie

Limity i automatyczna pauza

nginx limituje ruch na brzegu do 200 zapytań/s na źródłowy IP. Każdy monitor ma miękki limit 10 000 raportów/minutę; trzy kolejne minuty powyżej progu automatycznie wstrzymują ingest na godzinę i wysyłają e-mail do właściciela monitora. Rotacja adresu URL endpointu to awaryjny przycisk dostępny w zakładce jednym kliknięciem.

Inne typy raportów

Ten sam endpoint przyjmuje raporty NEL (Network Error Logging), Deprecation, Intervention i Expect-CT z Reporting API przeglądarki. Bez dodatkowej konfiguracji — wystarczy dodać je do grupy Report-To.

Endpointy API

Dostęp programistyczny dla pulpitów i CI: