Google annule le changement d’alerte du navigateur Chrome qui a cassé des sites Web et des applications Web

  • FrançaisFrançais



  • Google a temporairement annulé la suppression par Chrome des fenêtres d’alerte du navigateur et d’autres invites créées via des iframes d’origine croisée après un déploiement difficile au cours des deux dernières semaines, qui a brisé les applications Web et alarmé les développeurs.

    Un iframe, ou Inline Frame, est une partie d’une page Web intégrée dans une autre page Web. Lorsqu’il inclut des ressources d’une origine ou d’un domaine différent, il s’agit d’un iframe cross-origin.

    Depuis mars 2020, l’équipe derrière Chromium, le moteur open source de Chrome, a prévu de limiter les capacités des iframes cross-origin car ils constituent un problème de sécurité. Plus précisément, ils permettent à une ressource intégrée telle qu’une annonce de présenter une invite comme s’il s’agissait du domaine hôte.

    “L’expérience utilisateur actuelle est déroutante et a déjà conduit à des parodies où les sites prétendent que le message provient de Chrome ou d’un autre site Web”, a expliqué un ingénieur de Google dans l’avis initial d’intention de suppression de l’entreprise l’année dernière.

    « La suppression de la prise en charge de la capacité des iframes d’origine croisée à déclencher l’interface utilisateur empêchera non seulement ce type d’usurpation d’identité, mais débloquera également de nouveaux efforts pour rendre la boîte de dialogue plus reconnaissable dans le cadre du site Web plutôt que du navigateur. »

    La réponse de Google à l’usurpation d’identité a été d’empêcher le code JavaScript dans les iframes d’origine croisée d’appeler les méthodes d’alerte, d’invite et de confirmation sur l’objet fenêtre du navigateur – que les développeurs Web utilisent pour afficher les boîtes de dialogue pour les notifications et l’interaction des utilisateurs.

    Ce faisant, Google a cassé plus que quelques applications Web. Et à terme, Google prévoit de supprimer complètement ces mécanismes d’invite (des contextes de même origine ainsi que des contextes d’origine croisée), encore une fois pour éviter les abus potentiels.

    La dépréciation de window.alert, window.prompt, et window.confirm des iframes cross-origin a pris effet avec la sortie de Chrome 92.0.4515.107 le 20 juillet. Depuis lors, des applications comme l’environnement de développement social Codepen et Microsoft Base de données Azure Cosmos ont rencontré des problèmes car ils présentent aux utilisateurs des alertes, des notifications et des fenêtres de confirmation via des iframes cross-origin.

    Dans le problème Chromium où la suppression est suivie, les développeurs sont intervenus pour exprimer leur consternation face à la façon dont ce changement a été imposé à la communauté Web.

    “Ce changement nous a créé beaucoup de difficultés car nous utilisons un service tiers payant intégré via iframe dans notre application Web et je transmets une petite quantité de JavaScript personnalisé limité à cette application tierce lorsque j’instancier leur outil (pour déclencher certaines actions et personnaliser une partie de l’outil pour l’utilisateur), ” a écrit un développeur la semaine dernière. ” … Avec ce changement, je me démène pour implémenter un window.parent.postMessage solution de contournement, car des morceaux de notre application Web sont maintenant cassés pour nos dizaines de milliers d’utilisateurs.”

    “Je suis ingénieur pour une grande entreprise ERP et je travaille sur un produit où des centaines de gros clients (des centaines de milliers d’utilisateurs) ne sont plus en mesure d’utiliser le produit en raison de la suppression des dialogues d’origine croisée”, a écrit un autre développeur.

    « Ces clients choisissent généralement d’héberger le produit eux-mêmes, ce qui signifie que l’inscription à l’origine incomberait à chacun d’eux individuellement. Cela n’est pas faisable pour nous ou leurs services informatiques. Nous ne sommes même pas en mesure de le faire fonctionner en interne. Nous recevons également des réticences en leur demandant de supprimer les paramètres du registre. »

    Mon équipe travaille 24 heures sur 24 et les week-ends pour essayer de réécrire notre produit autour de ce changement

    “Mon équipe travaille 24 heures sur 24 et le week-end à essayer de réécrire notre produit autour de ce changement et a simplement besoin de plus de temps. Ce type de changement aurait dû être documenté et averti à l’avance à mon avis.”

    Le tollé s’est avéré suffisamment volubile pour que Microsoft Edge ait annulé la semaine dernière les modifications apportées à son code Chromium en amont pour restaurer les boîtes de dialogue dans les iframes d’origine croisée. Peu de temps après, un ingénieur de Google a déclaré que Chrome avait désactivé son obsolescence jusqu’au 15 août pour donner aux développeurs plus de temps pour réécrire leurs applications.

    Google a même mis en place un “essai d’origine inversée” de quatre mois qui ravive temporairement les invites d’origine croisée pour les utilisateurs de Chrome et donne aux développeurs qui rénovent de grandes applications Web plus de temps pour trouver des remplaçants pour les méthodes d’API exilées.

    “C’est le pic Chrome ; ce qui semble être une idée raisonnablement bonne qui est entravée parce qu’elle a été repoussée sans réfléchir sans faire aucun effort sérieux pour informer les personnes concernées ou s’assurer que rien d’autre ne se casse, ou s’assurer qu’il résout complètement le problème, ” a écrit le développeur Daniel Shumway dans un article sur Hacker News.

    “Les propriétaires de produits chez Chrome sont intelligents, mais ils sont négligents et cassent constamment le Web, car ils ne semblent pas avoir assez de sens de la gravité ou de prudence quant à ce qu’ils font.” ®

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *