Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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 mit Content-Security-Policy gesetzt wurden, oder "reporting" für Richtlinien, die mit Content-Security-Policy-Report-Only gesetzt 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. Sowohl columnNumber als auch lineNumber sollten nicht-null Werte haben, wenn diese Eigenschaft nicht null ist.

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 (