Content-Security-Policy: style-src-elem Richtlinie

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2022.

Die HTTP Content-Security-Policy (CSP) style-src-elem Richtlinie legt gültige Quellen für Stylesheet-<style>-Elemente und <link>-Elemente mit rel="stylesheet" fest.

Die Richtlinie legt keine gültigen Quellen für Inline-Style-Attribute fest; diese werden mit style-src-attr festgelegt (und gültige Quellen für alle Styles können mit style-src festgelegt werden).

CSP-Version 3
Richtlinientyp Fetch-Richtlinie
default-src Fallback

Ja. Wenn diese Richtlinie fehlt, sucht der Benutzeragent nach der style-src-Richtlinie, und wenn beide fehlen, fällt er auf die default-src Richtlinie zurück.

Syntax

http
Content-Security-Policy: style-src-elem 'none';
Content-Security-Policy: style-src-elem <source-expression-list>;

Diese Richtlinie kann einen der folgenden Werte haben:

'none'

Keine Ressourcen dieses Typs dürfen geladen werden. Die einfachen Anführungszeichen sind erforderlich.

<source-expression-list>

Eine durch Leerzeichen getrennte Liste von Quellenausdrücken. Ressourcen dieses Typs dürfen geladen werden, wenn sie mit einem der angegebenen Quellenausdrücke übereinstimmen. Für diese Richtlinie gelten die gleichen Quellenausdrücke wie für style-src, mit Ausnahme von 'unsafe-hashes'.

style-src-elem kann in Verbindung mit style-src verwendet werden:

http
Content-Security-Policy: style-src <source>;
Content-Security-Policy: style-src-elem <source>;

Beispiele

Verletzungsfälle

Angesichts dieses CSP-Headers:

http
Content-Security-Policy: style-src-elem https://example.com/

…werden die folgenden Stylesheets blockiert und nicht geladen:

html
<link href="https://not-example.com/styles/main.css" rel="stylesheet" />

<style>
  #inline-style {
    background: red;
  }
</style>

<style>
  @import url("https://not-example.com/styles/print.css") print;
</style>

…sowie Styles, die über den Link Header geladen werden:

http
Link: <https://not-example.com/styles/stylesheet.css>;rel=stylesheet

Spezifikationen

Specification
Content Security Policy Level 3
# directive-style-src-elem

Browser-Kompatibilität

Siehe auch