CSPViolationReport
Baseline 2026>
Neu verfügbar
Seit März 2026 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Das CSPViolationReport-Wörterbuch der Reporting API repräsentiert einen Bericht, der generiert wird, wenn ein Dokument gegen seine Content Security Policy (CSP) verstößt.
Berichte dieser Art können innerhalb einer Seite mit einem ReportingObserver beobachtet werden, und eine serialisierte Version kann an Reporting-Server-Endpunkte gesendet werden.
Instanz-Eigenschaften
body-
Der Körper des Berichts. Dies ist ein Objekt mit den folgenden Eigenschaften:
blockedURL-
Ein String, der entweder den Typ oder die URL der Ressource darstellt, die blockiert wurde, weil sie gegen die CSP verstößt.
columnNumber-
Die Zeichenposition in der Zeile des Skripts, an der der Verstoß auftrat.
disposition-
Ein String, der angibt, ob der Verstoß durchgesetzt oder nur berichtet wurde. Dies kann den Wert
"enforce"für Verstöße gegen Richtlinien haben, die mitContent-Security-Policygesetzt wurden, oder"reporting"für Richtlinien, die mitContent-Security-Policy-Report-Onlygesetzt wurden. documentURL-
Ein String, der die URL des Dokuments oder Workers darstellt, in dem der Verstoß gefunden wurde.
effectiveDirective-
Ein String, der die Direktive darstellt, deren Durchsetzung den Verstoß aufgedeckt hat.
lineNumber-
Die Zeilennummer im Skript, an der der Verstoß auftrat.
originalPolicy-
Ein String, der die Richtlinie enthält, deren Durchsetzung den Verstoß aufgedeckt hat.
referrer-
Ein String, der die URL des Referrers der Ressourcen darstellt, deren Richtlinie verletzt wurde, oder
null. sample-
Ein String, der eine Probe der Ressource darstellt, die den Verstoß verursacht hat, normalerweise die ersten 40 Zeichen. Dies wird nur befüllt, wenn die Ressource ein Inline-Skript, ein Event-Handler oder ein Stil ist – externe Ressourcen, die einen Verstoß verursachen, erzeugen keine Probe.
sourceFile-
Wenn der Verstoß durch ein Skript verursacht wurde, ist dies die URL des Skripts; andernfalls ist es
null. SowohlcolumnNumberals auchlineNumbersollten nicht-null Werte haben, wenn diese Eigenschaft nichtnullist. statusCode-
Eine Zahl, die den HTTP-Statuscode des Dokuments oder des Workers darstellt, in dem der Verstoß auftrat.
type-
Der String
"csp-violation", der anzeigt, dass dies ein CSP-Verstoßbericht ist. url-
Ein String, der die URL des Dokuments darstellt, das den Bericht generiert hat.
Beschreibung
CSP-Verstoßberichte können erstellt werden, wenn eine Webseite versucht, eine Ressource zu laden, die gegen eine CSP verstößt, die mit den HTTP-Headern Content-Security-Policy oder Content-Security-Policy-Report-Only gesetzt wird.
Sie können innerhalb der Seite, die die Richtlinie setzt, nach CSP-Verstoßberichten mit der Reporting API überwachen.
Dazu erstellen Sie ein ReportingObserver-Objekt, um Berichte zu überwachen, wobei eine Callback-Methode und eine (optionale) options-Eigenschaft übergeben werden, die die Berichtstypen spezifiziert, die Sie melden möchten.
Die Callback-Methode wird dann mit Berichten der angeforderten Typen aufgerufen und übergibt ein Bericht-Objekt.
Für CSP-Verstöße ist das Objekt eine CSPViolationReport-Instanz (die die Eigenschaft type auf "csp-violation" gesetzt hat).
Die Struktur eines typischen Berichts ist unten dargestellt.
Beachten Sie, dass wir sowohl die URL der Seite sehen können, deren Richtlinie verletzt wurde (url), als auch das Dokument, das versucht hat, die Ressource zu laden (