Content-Security-Policy: `script-src-elem`-Direktive
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
-Direktive script-src-elem
legt gültige Quellen für JavaScript-<script>
-Elemente fest.
Diese Direktive spezifiziert nur gültige Quellen in <script>
-Elementen (sowohl Skriptanforderungen als auch -blöcke). Sie gilt nicht für andere JavaScript-Quellen, die Script-Ausführung auslösen können, wie zum Beispiel Inlinescript-Ereignishandler (onclick
), Script-Ausführungsmethoden eingeschränkt durch die "unsafe-eval"-Prüfung und XSLT-Stylesheets. (Gültige Quellen können für alle JavaScript-Skriptquellen mit script-src
spezifiziert werden oder nur für Inline-Scripthandler mit script-src-attr
.)
CSP-Version | 3 |
---|---|
Direktivtyp | Fetch-Direktive |
default-src -Fallback |
Ja.
Ist diese Direktive nicht vorhanden, sucht der Benutzeragent nach der script-src -Direktive, und wenn beide nicht vorhanden sind, wird auf die default-src -Direktive zurückgegriffen.
|
Syntax
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'
-
Es dürfen keine Ressourcen dieses Typs 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 in der Fetch-Direktiv-Syntax aufgelisteten Source Expression-Werte gültig, mit Ausnahme von
'unsafe-hashes'
.
script-src-elem
kann in Verbindung mit script-src
verwendet werden:
Content-Security-Policy: script-src <source>;
Content-Security-Policy: script-src-elem <source>;
Beispiele
Verstoßcase
Angenommen, dieser CSP-Header:
Content-Security-Policy: script-src-elem https://example.com/
…so wird das folgende Skript blockiert und nicht geladen oder ausgeführt:
<script src="https://not-example.com/js/library.js"></script>
Spezifikationen
Specification |
---|
Content Security Policy Level 3 # directive-script-src-elem |