Ce qui change
Nous améliorons la sécurité côté client de YouTube grâce aux Trusted Types. Ainsi, les API Document Object Model (DOM) utilisées par les extensions tierces bénéficieront d'une protection supplémentaire.
Trusted Types exige que les extensions de navigateur tierces utilisent des objets saisis plutôt que des chaînes lorsqu'elles attribuent des valeurs aux API DOM. À partir du 25 juillet 2024, les extensions de navigateur qui ne respectent pas les exigences de sécurité des types approuvés risquent de ne plus fonctionner. Nous encourageons donc les développeurs concernés à suivre le guide Prévenir les failles de script intersites basées sur le DOM pour s'assurer que les extensions de navigateur sont compatibles avec les nouvelles normes de sécurité de YouTube.
Pourquoi est-ce important ?
L'activation des Trusted Types sur YouTube protégera nos utilisateurs contre un large éventail d'attaques par script intersites (XSS). Ils améliorent encore nos commandes de protection avancée des données pour assurer la sécurité des utilisateurs et des données dans un plus grand nombre d'extensions qu'ils utilisent tous les jours sur YouTube.
Que dois-je faire ?
Les spectateurs et les créateurs
Aucune action n'est requise. Les utilisateurs qui rencontrent des problèmes peuvent désactiver temporairement les extensions du navigateur qui les causent et en informer les développeurs correspondants. Si vous rencontrez des problèmes lors de la lecture d'une vidéo YouTube, nous vous recommandons d'ouvrir YouTube dans une fenêtre de navigation privée en désactivant toutes les extensions. Pour découvrir d'autres astuces de dépannage, consultez notre article du Centre d'aide.
Développeurs
- Si votre extension modifie le code HTML et qu'un utilisateur peut l'utiliser sur youtube.com, nous vous encourageons à suivre ces étapes pour vérifier si vos extensions sont compatibles et fonctionneront correctement après l'application de la fonctionnalité :
- Remplacez les en-têtes de réponse à l'aide des outils pour les développeurs Chrome. Pour ce faire, ajoutez les éléments suivants aux forçages d'en-tête locaux pour youtube.com:
Content-Security-Policy: require-trusted-types-for 'script'
- Ignorez le service worker YouTube. Ouvrez les outils pour les développeurs, accédez à l'onglet "Application", puis sélectionnez "Service workers" (Service workers) dans la section "Application". Cochez "Ignorer pour le réseau" dans les paramètres des services workers.
- Pour vous aider, vous pouvez activer les points d'arrêt automatiques en cas de non-respect des types approuvés. Par conception, Trusted Types génère une erreur d'exécution si un cas de non-respect de Trusted Types est détecté.
- Testez les workflows de votre extension. Une erreur s'affiche dans la console du développeur Chrome DevTools si une violation des Trusted Types se produit (ainsi qu'un point d'arrêt si vous l'avez activé).
- Remplacez les en-têtes de réponse à l'aide des outils pour les développeurs Chrome. Pour ce faire, ajoutez les éléments suivants aux forçages d'en-tête locaux pour youtube.com:
- Si le code de votre extension contient des cas de non-respect des Trusted Types, suivez le guide Prévenir les failles de script intersites basées sur le DOM pour les résoudre. Vous disposez de plusieurs options pour assurer la conformité avec les Trusted Types. Vous pouvez par exemple supprimer le code qui pose problème, utiliser une bibliothèque (comme safevalues ou DOMPurify) ou créer une règle Trusted Types.
Vous pouvez également consulter cette liste de frameworks et de bibliothèques qui peuvent vous aider à rendre votre extension conforme aux types approuvés (vous utilisez peut-être une ancienne bibliothèque tierce qui mérite d'être mise à jour).
Pour offrir une expérience optimale aux utilisateurs, nous vous recommandons de rendre les extensions de navigateur conformes aux Trusted Types avant le déploiement de cette fonctionnalité de sécurité sur YouTube. Si vous n'assurez pas la conformité du code aux Trusted Types, les fonctionnalités des extensions tierces risquent d'être interrompues, car leurs manipulations du DOM seront bloquées par le navigateur.