Reporting API für Bunny CDN konfigurieren
Reporting-Endpoints per Edge Rule setzen — CSP-Violations, Cross-Origin-Fehler und Browser-Deprecations an eigenen Endpoint weiterleiten.
Reporting API auf Bunny CDN
Die Reporting API ermöglicht es, Security-Policy-Violations, Deprecations und Netzwerkfehler automatisch an einen Endpoint zu senden. Mit 4 von 166 Punkten ist sie ein Faktor im Wolf-Agents Web Security Check. Auf Bunny CDN setzen Sie die Reporting-Header per Edge Rule — der Report-Empfang erfolgt auf Ihrem Origin-Server.
Zwei Header sind relevant: Reporting-Endpoints (neuer Standard, Chromium-basierte Browser) und Report-To (älterer Standard, breitere Kompatibilität). Wolf-Agents empfiehlt, beide Header parallel zu setzen. Die Reporting API ist besonders wertvoll in Kombination mit CSP im Report-Only-Modus — so erkennen Sie Violations, bevor sie Nutzer beeinträchtigen.
Reporting-Endpoints per Edge Rule
Legen Sie zwei Edge Rules an: Eine für den neuen Reporting-Endpoints Header und eine für den Legacy-Report-To Header. Setzen Sie die Header nur für HTML-Seiten — Assets lösen keine Violations aus. Der Report-Endpoint muss auf Ihrem Origin-Server laufen, nicht auf dem CDN.
# Bunny Dashboard → Pull Zone → Edge Rules
# --- Edge Rule 1: Reporting-Endpoints Header ---
Condition: Match All (oder URL Pattern: *.html)
Action: Set Response Header
Header Name: Reporting-Endpoints
Header Value: default="https://ihre-domain.de/api/reports", csp="https://ihre-domain.de/api/csp-reports"
# --- Edge Rule 2: Report-To Header (Legacy) ---
Header Name: Report-To
Header Value: {"group":"default","max_age":86400,"endpoints":[{"url":"https://ihre-domain.de/api/reports"}]}
# CSP mit report-to-Direktive (in separater CSP Edge Rule):
# ... report-to csp; report-uri https://ihre-domain.de/api/csp-reports Der Endpoint, der Violations empfängt, muss POST-Requests verarbeiten. Bunny CDN ist ein statisches CDN und kann keine POST-Requests an die Storage Zone weiterleiten. Der Endpoint muss auf Ihrem Origin-Server oder einem dedizierten Reporting-Dienst laufen.
Reporting per Bunny API automatisieren
Für automatisierte Deployments erstellen Sie beide Edge Rules per API. Beachten Sie das JSON-Escaping im Report-To Header — die Anführungszeichen müssen korrekt escaped werden. Verknüpfen Sie den Reporting-Endpoint mit Ihrer CSP per report-to-Direktive.
# Bunny API — Reporting-Endpoints Edge Rule
curl -X POST https://api.bunny.net/pullzone/{pullZoneId}/edgerules \
-H "AccessKey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ActionType": 15,
"ActionParameter1": "Reporting-Endpoints",
"ActionParameter2": "default="https://ihre-domain.de/api/reports", csp="https://ihre-domain.de/api/csp-reports"",
"Triggers": [{"Type": 0, "PatternMatchingType": 0, "PatternMatches": ["*.html"]}],
"TriggerMatchingType": 0,
"Description": "Reporting-Endpoints Header",
"Enabled": true
}'
# Report-To Header (Legacy-Kompatibilität)
curl -X POST https://api.bunny.net/pullzone/{pullZoneId}/edgerules \
-H "AccessKey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"ActionType": 15,
"ActionParameter1": "Report-To",
"ActionParameter2": "{"group":"default","max_age":86400,"endpoints":[{"url":"https://ihre-domain.de/api/reports"}]}",
"Triggers": [{"Type": 0, "PatternMatchingType": 0, "PatternMatches": ["*.html"]}],
"TriggerMatchingType": 0,
"Description": "Report-To Header (Legacy)",
"Enabled": true
}' Report-Empfang verifizieren
Prüfen Sie die Reporting-Header per curl und senden Sie einen Test-Report an den Endpoint. Öffnen Sie eine Seite mit absichtlicher CSP-Violation im Browser und prüfen Sie, ob der Report am Endpoint ankommt.
# Reporting-Endpoints Header prüfen
curl -sI https://ihre-domain.b-cdn.net | grep -i reporting-endpoints
# Erwartete Ausgabe:
reporting-endpoints: default="https://ihre-domain.de/api/reports", csp="..."
# Report-To Header prüfen
curl -sI https://ihre-domain.b-cdn.net | grep -i report-to
# Test-Report an Endpoint senden
curl -X POST https://ihre-domain.de/api/reports \
-H "Content-Type: application/reports+json" \
-d '[{"type":"test","age":0,"url":"https://test.example","body":{}}]' Häufige Fehler
JSON-Escaping im Report-To Header
Der Report-To Header enthält JSON, das in einem HTTP-Header-Wert steht. Beim Setzen per Edge Rule oder API müssen die Anführungszeichen korrekt escaped werden. Testen Sie den Header per curl und validieren Sie das JSON.
CORS auf dem Report-Endpoint fehlt
Browser senden Reports per POST an den Endpoint. Wenn Ihre CDN-Domain und der Report-Endpoint auf verschiedenen Domains liegen, muss der Endpoint CORS-Header setzen. Alternativ verwenden Sie denselben Origin für beide.
report-to in CSP fehlt
Der Reporting-Endpoints Header allein löst keine CSP-Reports aus. Sie müssen in der CSP-Direktive report-to csp und report-uri angeben, damit der Browser Violations an den benannten Endpoint sendet.
Compliance-Relevanz
Die Reporting API ermöglicht kontinuierliches Monitoring von Security Policies. PCI DSS 4.0 (Requirement 6.4.3) fordert die Überwachung autorisierter Scripts — CSP-Violation-Reports erfüllen diese Anforderung. NIS2 verlangt Mechanismen zur Erkennung von Sicherheitsvorfällen. BSI IT-Grundschutz empfiehlt die Überwachung von Sicherheitsrichtlinien. Der Wolf-Agents Web Security Check prüft die Konfiguration von Reporting-Endpoints und vergibt bis zu 4 Punkte.
Wie steht Ihre Domain bei Reporting API?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.