Atténuer les attaques XSS basées sur le DOM avec les Trusted Types
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Trusted Types est une fonctionnalité de sécurité de la plate-forme Web qui permet d'empêcher certaines attaques XSS basées sur le DOM en bloquant les points d'injection risqués (comme .innerHTML) qui utilisent des valeurs de chaîne non validées. Si un point d'injection risqué est bloqué, une infraction est signalée.
L'en-tête Content-Security-Policy (CSP) utilise la directive require-trusted-types-for pour appliquer les Trusted Types.
Échec de l'audit Lighthouse
Avertissement du rapport Lighthouse indiquant que l'en-tête de réponse CSP est manquant ou que la directive Trusted Types permettant d'atténuer les scripts intersites basés sur le DOM est manquante.
L'audit sera réussi si l'en-tête CSP est défini avec la directive require-trusted-types-for et le script comme valeur. L'audit échouera si l'en-tête CSP n'est pas défini ou s'il est défini, mais que la directive Trusted Types est manquante.
Configurer un en-tête CSP et une directive Trusted Types pour atténuer les attaques XSS basées sur le DOM
Les user-agents utilisent la directive require-trusted-types-for pour contrôler les données transmises aux fonctions de récepteur XSS basées sur le DOM. La valeur script de cette directive permet de vérifier que les fonctions de récepteur d'injection XSS dans le DOM n'acceptent que les types générés par les règles de types fiables, au lieu d'autoriser les chaînes :
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/08 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/07/08 (UTC)."],[],[]]