A Mozilla elkezdi elfogadni a bővítményeket a Chrome kiáltvány harmadik verziója alapján

November 21-én az AMO-címtár (addons.mozilla.org) megkezdi a bővítmények elfogadását és digitális aláírását a Chrome-jegyzék 109. verziójával. Ezeket a kiegészítőket a Firefox éjszakai buildjeiben lehet tesztelni. A stabil kiadásokban a jegyzék 17. verziójának támogatása engedélyezve lesz a Firefox 2023-ben, 2023. január XNUMX-én. A kiáltvány második verziójának támogatása belátható időn keresztül megmarad, de XNUMX végén, miután felmértük a kiegészítések átvitelének dinamikáját a kiáltvány harmadik változatához, lehetőség nyílik a kiáltvány második verziójának támogatásának megszüntetésére. figyelembe veszik.

A Chrome jegyzéke meghatározza a WebExtensions API-val írt bővítmények számára elérhető képességeket és erőforrásokat. Az 57-es verziótól kezdve a Firefox teljesen áttért a WebExtensions API használatára a kiegészítők fejlesztéséhez, és leállította az XUL technológia támogatását. A WebExtensions-re való átállás lehetővé tette a bővítmények fejlesztésének egységesítését a Chrome, Opera, Safari és Edge platformokkal, leegyszerűsítette a kiegészítők portolását a különböző webböngészők között, és lehetővé tette a többfolyamatos mód teljes körű kihasználását. művelet (a WebExtensions kiegészítők külön folyamatokban, a böngésző többi részétől elkülönítve futtathatók). A kiegészítők fejlesztésének más böngészőkkel való egyesítése érdekében a Firefox szinte teljes kompatibilitást biztosít a Chrome manifest második verziójával.

A Chrome jelenleg a jegyzék 2024. verziójára való átálláson dolgozik, és a XNUMX. verzió támogatása XNUMX januárjában megszűnik. Az új verzióban végrehajtott változtatások fő célja, hogy megkönnyítsék a biztonságos és nagy teljesítményű bővítmények készítését, illetve nehezítsék a nem biztonságos és lassú bővítmények készítését. Mivel a jegyzék harmadik verziója kritikákba ütközött, és számos tartalomblokkoló és biztonsági bővítményt megsemmisít, a Mozilla úgy döntött, hogy nem teljesen kompatibilis a Firefox jegyzékével, és bizonyos változtatásokat másként hajt végre.

A kiáltvány harmadik verziójával kapcsolatos fő elégedetlenség a webRequest API csak olvasható módba fordításával kapcsolatos, amely lehetővé tette saját kezelők csatlakoztatását, amelyek teljes hozzáféréssel rendelkeznek a hálózati kérésekhez, és menet közben módosíthatják a forgalmat. Ezt az API-t az uBlock Origin és sok más kiegészítő használja a nem megfelelő tartalom blokkolására és a biztonság biztosítására. A webRequest API helyett a jegyzék harmadik verziója egy korlátozott képességű declarativeNetRequest API-t kínál, amely hozzáférést biztosít egy beépített szűrőmotorhoz, amely önállóan dolgozza fel a blokkoló szabályokat, nem teszi lehetővé saját szűrőalgoritmusok használatát, és nem lehetővé teszi összetett szabályok beállítását, amelyek a feltételektől függően átfedik egymást.

Az új jegyzék Firefoxban való megvalósításának jellemzői között:

  • Új deklaratív tartalomszűrő API került hozzáadásra, de a Chrome-mal ellentétben a webRequest API régi blokkoló módjának támogatása nem szűnt meg.
  • A jegyzék meghatározza a háttéroldalak helyettesítését a Service Workers beállítással, amely háttérfolyamatként fut (Background Service Workers). A jövőbeni kompatibilitás érdekében a Firefox támogatni fogja a Service Workers-t, de jelenleg egy új Event Pages mechanizmus váltja fel őket, amely jobban ismert a webfejlesztők számára, nem igényli a kiegészítők teljes átdolgozását, és kiküszöböli a kapcsolódó korlátokat. a Service Workers használata. Az eseményoldalak lehetővé teszik, hogy a háttéroldalak meglévő kiegészítései megfeleljenek a jegyzék harmadik verziójának követelményeinek, miközben fenntartják a hozzáférést a DOM-mal való együttműködéshez szükséges összes funkcióhoz.
  • Az új granulált engedélykérés modell - a bővítményt nem lehet egyszerre minden oldalra aktiválni (az „all_urls” engedélyt eltávolítottuk), hanem csak az aktív lap kontextusában fog működni, pl. a felhasználónak meg kell erősítenie, hogy a bővítmény minden webhelyen működik. A Firefoxban a webhelyadatokhoz való hozzáférés minden kérése nem kötelező, és a hozzáférés megadásával kapcsolatos végső döntést a felhasználó hozza meg, aki szelektíven döntheti el, hogy egy adott oldalon melyik kiegészítő ad hozzáférést az adataihoz.

    A jogosultságok kezeléséhez egy új „Unified Extensions” gomb került a felületre, amely már tesztelhető a Firefox éjszakai buildjeiben. A gomb segítségével közvetlenül szabályozható, hogy az egyes bővítmények mely webhelyekhez férhetnek hozzá – a felhasználó bármely webhelyhez hozzáférést biztosíthat és visszavonhat egy bővítményt. Az engedélykezelés csak a jegyzék harmadik verzióján alapuló bővítményekre vonatkozik; a jegyzék második verzióján alapuló bővítmények esetében a webhelyekhez való részletes hozzáférés szabályozása nem történik meg.

    A Mozilla elkezdi elfogadni a bővítményeket a Chrome kiáltvány harmadik verziója alapján
  • Változás a több eredetû kérelmek kezelésében – az új jegyzéknek megfelelõen a tartalomfeldolgozó szkriptekre ugyanazok az engedélykorlátozások vonatkoznak majd, mint arra a fõoldalra, amelybe ezek a szkriptek be vannak ágyazva (például ha az oldal nem fér hozzá a hely API, akkor a szkript-bővítmények szintén nem kapják meg ezt a hozzáférést). Ez a változtatás teljes mértékben megvalósul a Firefoxban.
  • Ígéret alapú API. A Firefox támogatja ezt az API-t, és a jegyzék harmadik verziója esetén áthelyezi a „chrome.*” névtérbe.
  • Külső szerverekről letöltött kódok végrehajtásának tiltása (olyan helyzetekről beszélünk, amikor a kiegészítő külső kódot tölt be és hajt végre). A Firefox külső kódblokkolást használ, és a Mozilla fejlesztői további kódletöltés-követési technikákat adtak hozzá, amelyeket a jegyzék harmadik verziója kínál. A tartalomfeldolgozó szkriptekhez külön tartalom-hozzáférési korlátozási szabályzat (CSP, Content Security Policy) biztosított.

Forrás: opennet.ru

Hozzászólás