Google отменила удаление в Chrome предупреждающих окон браузера и других подсказок, созданных с помощью cross-origin iFrame, после того, как данное обновление за последние две недели сломало многие веб-приложения и встревожило разработчиков.

IFrame - это компонент HTML-элемента, который позволяет встраивать документы, видео и интерактивные медиафайлы на страницу (другими словами, кадр внутри кадра). Используя данный компонент, можно отобразить дополнительную страницу на главной веб-странице.

Элемент iFrame позволяет включать часть содержимого из других источников, что и называется cross-origin iFrame. Он может интегрировать контент в любом месте на вашей странице, без необходимости включать их в структуру веб-макета, как традиционный элемент.

С марта 2020 года команда, разрабатывающая Chromium и движок с открытым исходным кодом Chrome, планировала ограничить возможности cross-origin iFrames из соображений безопасности (данный элемент позволяет рекламным объявлениям «представляться» частью сайта или уведомлением самого браузера). Разработчики пытались бороться с данным видом спуфинга путём добавления в iFrame фразы “<hostname> says...”, тем самым еще больше запутывая пользователя. Поэтому 20 июля вышло обновление Chrome 92.0.4515.107, запрещающее использование window.alertwindow.prompt, и window.confirm для cross-origin iFrames, в результате чего Codepen и Microsoft Azure Cosmos DB столкнулись с проблемами (так как они предоставляют пользователям оповещения, уведомления и окна подтверждения через iFrames), а также огромное количество разработчиков высказало свое негодование. Microsoft Edge откликнулись на их критику и на прошлой неделе отменили изменения в коде Chromium для восстановления диалогов в cross-origin iFrames. Вскоре разработчик Google заявил, что Chrome отключил обновление до 15 августа, чтобы предоставить разработчикам больше времени для переписывания своих приложений.

Помимо этого, Google внедрили четырехмесячную "reverse origin trial", которая временно оживляет cross-origin запросы для пользователей Chrome и дает разработчикам, модернизирующим веб-приложения, больше времени на поиск замены удалённым методам API.

Комментарии (6)


  1. staticmain
    12.08.2021 18:02
    +1

    Интересно, это поэтому у меня codepen последние несколько месяцев не работает?

    Заголовок спойлера


  1. janvarev
    12.08.2021 19:19
    +1

    Никогда Chrome не ломал чужие веб-приложения ради безопасности, и вот опять…


  1. zzzzzzzzzzzz
    12.08.2021 21:34

    Осталось только к этому trial прикрутить ещё "полную версию". Проплачиваешь кому надо, и твои веб-приложения попадают в белый список и не ломаются
    .


  1. MacIn
    13.08.2021 02:08

    Мне интереснее, что будет с third party cookie blocking, которое все жестче вводится, и тоже ломает кучу приложений, работающих в iframe'ах…


    1. freeExec
      13.08.2021 09:21

      Приложения изменятся или умрут.


      1. MacIn
        13.08.2021 23:39

        Не все так просто, как минимум, с сессионными токенами будет проблема.