CSP: script-src-elem

Die HTTP-Content-Security-Policy (CSP) script-src-elem Direktive gibt gültige Quellen für JavaScript <script>-Elemente an.

Diese Direktive legt nur gültige Quellen in <script>-Elementen fest (sowohl Skriptanforderungen als auch -blöcke). Sie bezieht sich nicht auf andere JavaScript-Quellen, die Skriptausführung auslösen können, wie Inline-Skript-Ereignishandler (onclick), Skriptausführungsmethoden begrenzt durch die "unsafe-eval"-Überprüfung, und XSLT Stile. (Gültige Quellen können für alle JavaScript-Skriptquellen mit script-src, oder nur für Inline-Skripthandler mit script-src-attr festgelegt werden.)

CSP-Version 3
Art der Direktive Fetch-Direktive
default-src Fallback Ja. Sollte diese Direktive fehlen, sucht der User-Agent nach der script-src Direktive und fällt, wenn beide fehlen, auf die default-src-Direktive zurück.

Syntax

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

Diese Direktive kann einen der folgenden Werte haben:

'none'

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

<source-expression-list>

Eine durch Leerzeichen getrennte Liste von source expression Werten. Ressourcen dieses Typs dürfen geladen werden, wenn sie mit einem der angegebenen Quellausdrücke übereinstimmen. Für diese Direktive sind alle Quellausdruckswerte, die in der Fetch-Direktivsyntax aufgelistet sind, anwendbar, mit Ausnahme von 'unsafe-hashes'.

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

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

Beispiele

Fall von Verstoß

Angenommen, dieser CSP-Header:

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

…wird das folgende Skript blockiert und nicht geladen oder ausgeführt:

html
<script src="https://not-example.com/js/library.js"></script>

Spezifikationen

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

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch