Mozilla začne prijímať doplnky založené na tretej verzii manifestu Chrome

21. novembra začne katalóg AMO (addons.mozilla.org) prijímať a overovať digitálnym podpisom doplnky používajúce tretiu verziu manifestu Chrome. Uvedené doplnky si bude možné vyskúšať v nočných zostaveniach Firefoxu. V stabilných vydaniach bude podpora tretej verzie manifestu pridaná vo Firefoxe 109, ktorý je naplánovaný na 17. januára 2023. Podpora druhej verzie manifestu zostane aj v blízkej budúcnosti, ale na konci roka 2023, po vyhodnotení dynamiky prevodu doplnkov na tretiu verziu manifestu, sa zváži otázka možného prechodu podpory druhej verzie manifestu do stavu zastaranosti.

Manifest Chrome určuje možnosti a zdroje dostupné pre rozšírenia, ktoré sú napísané pomocou API WebExtensions. Od verzie 57 Firefox prešiel na úplné používanie API WebExtensions na vývoj rozšírení a prestal podporovať technológiu XUL. Prechod na WebExtensions umožnil zjednotiť vývoj rozšírení s platformami Chrome, Opera, Safari a Edge, zjednodušil portovanie rozšírení medzi rôznymi webovými prehliadačmi a poskytol plnohodnotné využitie viacprocesného režimu (rozšírenia WebExtensions môžu bežať v samostatných procesoch, oddelene od ostatných častí prehliadača). Pre zjednotenie vývoja rozšírení s ostatnými prehliadačmi vo Firefoxe zabezpečuje takmer úplnú kompatibilitu s druhou verziou manifestu Chrome.

V súčasnosti sa v Chrome pracuje na prechode na tretiu verziu manifestu, pričom podpora druhej verzie bude ukončená v januári 2024. Hlavným cieľom zmien zavedených v novej verzii je zjednodušiť vytváranie bezpečných a výkonných doplnkov a sťažiť vytváranie nebezpečných a pomalých doplnkov. Keďže sa tretia verzia manifestu stala predmetom kritiky a povedie k poruche mnohých doplnkov na blokovanie nežiadúceho obsahu a zabezpečenie bezpečnosti, spoločnosť Mozilla sa rozhodla odstúpiť od zaistenia úplnej kompatibility s manifestom vo Firefox a realizovať niektoré zmeny iným spôsobom.

Hlavné nespokojenie s treťou verziou manifestu súvisí s prechodom do režimu iba na čítanie pre API webRequest, ktoré umožňovalo pripojiť vlastné spracovateľské jednotky s plným prístupom k sieťovým požiadavkám a schopných za behu modifikovať prevádzku. Uvedené API sa používa v uBlock Origin a mnohých ďalších doplnkoch na blokovanie nežiadúceho obsahu a zabezpečenie bezpečnosti. Namiesto API webRequest ponúka tretia verzia manifestu obmedzené API declarativeNetRequest, ktoré poskytuje prístup k vstavanému enginu na filtrovanie, samostatne spracovávajúcemu pravidlá blokovania, ktoré neumožňuje používať vlastné filtre a nedovoľuje zadávať zložené pravidlá, ktoré sa prekrývajú v závislosti od podmienok.

Medzi vlastnosti realizácie nového manifestu vo Firefox patrí:

  • Bol pridaný nový deklaratívny API na filtrovanie obsahu, ale na rozdiel od Chrome nebola ukončená podpora starého blokujúceho režimu API webRequest.
  • V manifeste je definovaná náhrada pozadí stránok variantom Service Workers, ktorý funguje ako pozadové procesy (Background Service Workers). Na zabezpečenie kompatibility v budúcnosti bude v prehliadači Firefox implementovaná podpora Service Workers, ale v súčasnosti je namiesto nich navrhnutý nový mechanizmus Event Pages, ktorý je pre webových vývojárov viac známy, nevyžaduje kompletnú prestavbu rozšírení a odstraňuje obmedzenia spojené s používaním Service Workers. Event Pages umožní prispôsobiť existujúce rozšírenia s pozadovými stránkami požiadavkám tretej verzie manifestu, pričom si zachová prístup ku všetkým funkciám potrebným na prácu s DOM.
  • Nový granulačný model požiadavky na oprávnenia — doplnok sa nebude môcť aktivovať okamžite pre všetky stránky (odstránené oprávnenie „all_urls“), ale bude fungovať iba v kontexte aktívnej karty, t.j. používateľ bude musieť potvrdiť prácu doplnku pre každú stránku. V Firefoxe budú všetky požiadavky na prístup k údajom stránky považované za nepovinné a konečné rozhodnutie o poskytnutí prístupu prijme používateľ, ktorý bude môcť selektívne rozhodovať, ktorému doplnku poskytnú prístup k svojim údajom na danej stránke.

    Pre správu oprávnení bola do rozhrania pridaná nová tlačidlo „Unified Extensions“, ktorú už je možné testovať v nočných zostavách Firefoxu. Tlačidlo poskytuje nástroje na priamu správu toho, akým stránkam má každé rozšírenie prístup – používateľ môže udeliť a odobrať prístup rozšírenia k akémukoľvek webu. Správa oprávnení sa aplikuje iba na rozšírenia založené na tretej verzii manifestu, pre rozšírenia druhej verzie manifestu neexistuje granularizovaná správa prístupu k stránkam.

    Mozilla začne prijímať doplnky založené na tretej verzii manifestu Chrome
  • Zmena spracovania požiadaviek z rôznych domén — podľa nového manifestu sa na skripty spracovania obsahu budú vzťahovať rovnaké obmedzenia oprávnení ako na hlavnú stránku, do ktorej sú tieto skripty integrované (napríklad ak stránka nemá prístup k API určovania polohy, tak ani skript rozšírenia tento prístup nezíska). Táto zmena je plne realizovaná vo Firefoxe.
  • API založené na Promise. Firefox toto API podporuje a pre tretiu verziu manifestu ho prenesie do priestoru názvov „chrome.*“.
  • Zákaz vykonávania kódu načítaného z vonkajších serverov (reč o situáciách, keď rozšírenie načítava a vykonáva externý kód). V prehliadači Firefox je blokovaný externý kód a vývojári Mozilly pridali dodatočné techniky sledovania načítania kódu, navrhované v tretej verzii manifestu. Pre skripty spracovania obsahu bola predstavená samostatná politika obmedzenia prístupu k obsahu (CSP, Content Security Policy).

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster