Content-Security-Policy : directive script-src-elem
Baseline
Large disponibilité
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis décembre 2022.
La directive HTTP Content-Security-Policy (CSP) script-src-elem indique les sources valides pour des éléments HTML <script>.
Cette directive ne définit que les sources valides pour les éléments <script> (à la fois les requêtes de script et les blocs).
Elle ne s'applique pas aux autres sources JavaScript pouvant déclencher l'exécution de scripts, telles que les gestionnaires d'évènements JavaScript embarqués (onclick), les méthodes d'exécution de scripts soumis à la vérification "unsafe-eval", et les feuilles de style XSLT.
(Les sources valides peuvent être définies pour toutes les sources de scripts JavaScript en utilisant script-src, ou uniquement pour les gestionnaires de scripts embarqués en utilisant script-src-attr.)
| Version de CSP | 3 |
|---|---|
| Type de directive | Directive de récupération |
Solution de repli default-src |
Oui, si cette directive est absente, l'agent utilisateur consultera la directive script-src, qui a pour valeur par défaut celle de la directive default-src.
|
Syntaxe
Content-Security-Policy: script-src-elem 'none';
Content-Security-Policy: script-src-elem <source-expression-list>;
Cette directive peut avoir l'une des valeurs suivantes :
'none'-
Aucune ressource de ce type ne peut être chargée. Les guillemets simples sont obligatoires.
<source-expression-list>-
Une liste de valeurs d'expressions de source séparées par des espaces. Les ressources de ce type peuvent être chargées si elles correspondent à l'une des expressions de source données. Pour cette directive, toutes les valeurs d'expression de source énumérées dans la syntaxe des directives de récupération sont applicables, à l'exception de
'unsafe-hashes'.
script-src-elem peut être utilisé en conjonction avec script-src:
Content-Security-Policy: script-src <source>;
Content-Security-Policy: script-src-elem <source>;
Exemples
Cas de violation
Étant donné cet en-tête CSP :
Content-Security-Policy: script-src-elem https://exemple.com/
…le script suivant est bloqué et ne sera ni chargé ni exécuté :
<script src="https://hors-exemple.com/js/library.js"></script>
Spécifications
| Spécification |
|---|
| Content Security Policy Level 3 # directive-script-src-elem |
Compatibilité des navigateurs
Voir aussi
- L'en-tête
Content-Security-Policy - L'élément HTML
<script> - La directive CSP
script-src - La directive CSP
script-src-attr