Mozilla обобщи плановете си за поддръжка на третата версия на манефеста на Chrome в Firefox

Компания Mozilla публикува план за реализиране на третата версия на манифеста Chrome в Firefox, която определя возможностейта и ресурсите, предоставяни на разширенията. Третата версия на манифеста бе критикувана заради нарушение на работата на много разширения за блокиране на нежелано съдържание и осигуряване на безопасност.

В Firefox планират да реализират почти всички възможности и ограничения на новия манифест, включително декларативния API за филтриране на съдържание (declarativeNetRequest), но за разлика от Chrome, в Firefox няма да бъде прекратена поддръжката на стария блокиращ модул на API webRequest, поне докато новият API не отговори изцяло на нуждите на разработчиците на разширения, използващи API webRequest. Този подход ще осигури съвместимост с разширенията на Chrome, без да се нарушава съвместимостта с разширения, зависещи от API webRequest.

Да напомним, че основното недоволство от новия манифест е свързано с преобразуването на API webRequest в режим само за четене, който позволява включването на собствени обработващи програми с пълен достъп до мрежовите заявки и способни динамично да модифицират трафика. Указаният API се използва в uBlock Origin и много други разширения за блокиране на нежелано съдържание и осигуряване на безопасност. Вместо API webRequest е предложен ограничен по възможностите си API declarativeNetRequest, който предоставя достъп до вградения двигател за филтриране, обработващ правилата за блокиране самостоятелно, без да разрешава използването на собствени алгоритми и без да позволява задаването на сложни правила, които се припокриват в зависимост от условията.

В Firefox планират да предоставят поддръжка на третата версия на манифеста Chrome за тестване в края на 2021 година, а внедряването на новия манифест е намечено за началото на 2022 година. От особеностите на реализиране на новия манифест в Firefox се откроява:

  • Предоставяне на API declarativeNetRequest, но със запазване на възможността за използване на стария API webRequest.
  • Промяна в обработката на Cross-origin заявки — в съответствие с новия манифест за скриптове за обработка на съдържание, ще се прилагат същите ограничения за разрешенията, каквито са приложими и за основната страница, в която тези скриптове се внедряват (например, ако страницата няма достъп до API за определяне на местоположение, то и скриптът за добавяне също няма да получи този достъп). Част от свързаните с ограниченията на cross-origin промените вече е налична за тестване в нощните версии на Firefox (развива се, като част от проекта Fission, който може да бъде активиран в about:preferences#experimental) и е планирано за широко внедряване през третото тримесечие на 2021 година.
  • Фоновите страници ще бъдат заменени с Service workers, работещи под формата на фонови процеси. Промяната все още не е готова за стартиране на тестване.
  • API, базирано на Promise. Firefox вече поддържа този тип API в пространството имена «browser.*» и за третата версия на манифеста ще го прехвърли в пространството имена «chrome.*».
  • Нова гранулирана модел на искане на разрешения — добавката няма да може да се активира веднага за всички страници (отнето е разрешението «all_urls»), а ще работи само в контекста на активната табула, т.е. потребителят ще трябва да потвърдява работата на добавката за всеки сайт. Компанията Mozilla работи за засилване на контрола върху достъпа, но има намерение да предостави на потребителите възможността сами да вземат решения, дали да позволят на добавките да работят с различни табули.
  • Забрана за изпълнение на код, зареден от външни сървъри (става въпрос за ситуации, когато добавката зарежда и изпълнява външен код). В Firefox вече се прилага блокиране на външен код и разработчиците на Mozilla са готови да добавят допълнителни техники за проследяване на зарежданията на код, предложени в третата версия на манифеста. За скриптовете за обработка на съдържание ще бъде представена отделна политика за ограничаване на достъпа до съдържанието (CSP, Content Security Policy), а съществуващите API userScripts и contentScripts ще бъдат преработени, за да поддържат разширения на базата на Service worker.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster