Mozilla nie przeniesie wszystkich ograniczeń API WebExtensions z nowego manifestu Chrome

Firma Mozilla ogłosił, że pomimo zastosowania w Firefoksie systemu dodatków opartego na API WebExtensions, twórcy nie zamierzają w pełni podążać za przyszłą, trzecią edycją manifestu dodatków do Chrome. W szczególności Firefox będzie nadal obsługiwać tryb blokowania interfejsu API. żądanie internetowe, który pozwala na zmianę odbieranej treści w locie i jest poszukiwany w programach blokujących reklamy i systemach filtrowania treści.

Główną ideą przejścia na API WebExtensions było ujednolicenie technologii tworzenia dodatków dla Firefoksa i Chrome, dzięki czemu w obecnej formie Firefox jest niemal w 100% kompatybilny z obecną drugą wersją manifestu Chrome. Manifest definiuje listę możliwości i zasobów udostępnianych dodatkom. W związku z wprowadzeniem w trzeciej wersji manifestu ograniczeń, które są negatywnie odbierane przez twórców dodatków, Mozilla odejdzie od praktyki pełnego przestrzegania manifestu i nie będzie przenosić do Firefoksa zmian naruszających kompatybilność z dodatkami ons.

Przypomnijmy, że pomimo na wszystko zastrzeżenia, Google zamierza zaprzestać obsługi trybu blokowania interfejsu webRequest API w przeglądarce Chrome, ograniczając go do trybu tylko do odczytu i oferując nowy deklaratywny interfejs API do filtrowania treści declarativeNetRequest. O ile API webRequest umożliwiło podłączenie własnych procedur obsługi, które mają pełny dostęp do żądań sieciowych i są w stanie na bieżąco modyfikować ruch, o tyle nowe API deklarativeNetRequest zapewnia dostęp do gotowego, uniwersalnego, wbudowanego silnika filtrującego, który niezależnie przetwarza reguły blokujące , nie pozwala na stosowanie własnych algorytmów filtrujących i nie pozwala na ustalanie skomplikowanych reguł, które nakładają się na siebie w zależności od warunków.

Mozilla ocenia również wykonalność przejścia na obsługę przeglądarki Firefox w przypadku innych zmian z trzeciej wersji manifestu przeglądarki Chrome, które zakłócają kompatybilność z dodatkami:

  • Przejście na wykonywanie Service workerów w postaci procesów w tle, co będzie wymagało od programistów zmiany kodu niektórych dodatków. Chociaż nowa metoda jest bardziej wydajna z punktu widzenia wydajności, Mozilla rozważa utrzymanie obsługi stron działających w tle.
  • Nowy model szczegółowego żądania uprawnień - dodatek nie będzie mógł być aktywowany dla wszystkich stron jednocześnie (usunięto uprawnienie „all_urls”), ale będzie działał tylko w kontekście aktywnej karty, tj. użytkownik będzie musiał potwierdzić, że dodatek działa dla każdej witryny. Mozilla szuka sposobów na wzmocnienie kontroli dostępu bez ciągłego rozpraszania użytkownika.
  • Zmiana w obsłudze żądań Cross-Origin - zgodnie z nowym manifestem, skrypty przetwarzające treść będą podlegały takim samym ograniczeniom uprawnień, jak w przypadku strony głównej, na której te skrypty są osadzone (np. jeśli strona nie ma dostępu do Location API, wówczas dodatki skryptowe również nie otrzymają tego dostępu). Planowane jest wprowadzenie zmiany w przeglądarce Firefox.
  • Zakaz wykonywania kodu pobranego z serwerów zewnętrznych (mówimy o sytuacjach, gdy dodatek ładuje i wykonuje kod zewnętrzny). Firefox korzysta już z blokowania kodu zewnętrznego, a programiści Mozilli chcą ulepszyć tę ochronę, korzystając z dodatkowych technik śledzenia pobierania kodu oferowanych w trzeciej wersji manifestu.

Źródło: opennet.ru

Dodaj komentarz