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

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
script-src-elem

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch