Mozilla alkaa hyväksyä lisäosia, jotka perustuvat Chromen manifestin kolmanteen versioon

21. marraskuuta AMO-hakemisto (addons.mozilla.org) alkaa hyväksyä ja digitaalisesti allekirjoittaa lisäosia käyttämällä Chromen luettelon versiota 109. Näitä lisäosia voidaan testata Firefoxin iltaisin rakennelmissa. Vakaissa julkaisuissa manifestiversion 17 tuki otetaan käyttöön Firefox 2023:ssä, joka on ajoitettu 2023. tammikuuta XNUMX. Tuki manifestin toiselle versiolle säilyy lähitulevaisuudessa, mutta vuoden XNUMX lopussa, kun on arvioitu manifestin kolmanteen versioon lisäysten siirtämisen dynamiikkaa, mahdollisuus poistaa tuki manifestin toiselle versiolle. tullaan harkitsemaan.

Chromen luettelo määrittelee WebExtensions API:lla kirjoitettujen laajennusten käytettävissä olevat ominaisuudet ja resurssit. Versiosta 57 alkaen Firefox siirtyi kokonaan käyttämään WebExtensions API:ta lisäosien kehittämiseen ja lopetti XUL-tekniikan tukemisen. Siirtyminen WebExtensionsiin mahdollisti lisäosien kehittämisen yhdistämisen Chrome-, Opera-, Safari- ja Edge-alustoille, yksinkertaisti lisäosien siirtämistä eri verkkoselaimien välillä ja mahdollisti moniprosessitilan täyden käytön. käyttö (WebExtensions-lisäosat voidaan suorittaa erillisissä prosesseissa, erillään muusta selaimesta). Yhdistääkseen lisäosien kehittämisen muiden selainten kanssa Firefox tarjoaa lähes täydellisen yhteensopivuuden Chrome-luettelon toisen version kanssa.

Chrome työskentelee parhaillaan siirtyäkseen manifestin versioon 2024, ja version XNUMX tuki lopetetaan tammikuussa XNUMX. Uuteen versioon tehtyjen muutosten päätavoite on helpottaa turvallisten ja tehokkaiden lisäosien luomista sekä vaikeuttaa vaarallisten ja hitaiden lisäosien luomista. Koska luettelon kolmas versio on joutunut tulen kohteeksi ja rikkoo monia sisällön esto- ja suojauslisäosia, Mozilla on päättänyt luopua täysin yhteensopivasta luettelon kanssa Firefoxissa ja toteuttaa joitain muutoksia eri tavalla.

Suurin tyytymättömyys manifestin kolmanteen versioon liittyy webRequest API:n käännökseen vain luku -tilaan, mikä mahdollisti omien käsittelijöiden yhdistämisen, joilla on täysi pääsy verkkopyyntöihin ja jotka voivat muokata liikennettä lennossa. Tätä API:ta käytetään uBlock Originissa ja monissa muissa lisäosissa sopimattoman sisällön estämiseen ja turvallisuuden tarjoamiseen. WebRequest API:n sijasta manifestin kolmas versio tarjoaa rajoitetun kyvyn declarativeNetRequest API:n, joka tarjoaa pääsyn sisäänrakennettuun suodatusmoottoriin, joka käsittelee itsenäisesti estosäännöt, ei salli omien suodatusalgoritmien käyttöä eikä mahdollistaa monimutkaisten sääntöjen asettamisen, jotka menevät päällekkäin olosuhteista riippuen.

Uuden luettelon käyttöönotto Firefoxissa:

  • Uusi deklaratiivinen sisällönsuodatussovellusliittymä on lisätty, mutta toisin kuin Chromessa, webRequest API:n vanhan estotilan tukea ei ole lopetettu.
  • Luettelossa määritellään taustasivujen korvaaminen Service Workers -vaihtoehdolla, joka toimii taustaprosesseina (Background Service Workers). Tulevaisuudessa yhteensopivuuden varmistamiseksi Firefox tukee Service Workers -palvelua, mutta tällä hetkellä ne on korvattu uudella Event Pages -mekanismilla, joka on tutumpi verkkokehittäjille, ei vaadi lisäosien täydellistä uudelleenkäsittelyä ja eliminoi niihin liittyvät rajoitukset. palvelutyöntekijöiden käyttöä. Tapahtumasivut mahdollistavat olemassa olevien taustasivujen lisäysten mukautumisen manifestin kolmannen version vaatimuksiin, samalla kun ne säilyttävät pääsyn kaikkiin DOM:n kanssa toimimiseen tarvittaviin ominaisuuksiin.
  • Uusi rakeinen lupapyyntömalli - lisäosaa ei voida aktivoida kaikille sivuille kerralla ("all_urls" -oikeus on poistettu), vaan se toimii vain aktiivisen välilehden yhteydessä, ts. käyttäjän on vahvistettava, että lisäosa toimii jokaisessa sivustossa. Firefoxissa kaikki pyynnöt päästä käsiksi sivuston tietoihin katsotaan valinnaisiksi, ja lopullisen päätöksen käyttöoikeuden myöntämisestä tekee käyttäjä, joka voi valikoivasti päättää, millä lisäosalla hän antaa pääsyn heidän tietoihinsa tietyllä sivustolla.

    Käyttöoikeuksien hallintaa varten käyttöliittymään on lisätty uusi "Unified Extensions" -painike, jota voi jo testata Firefoxin öisissä rakennuksissa. Painike tarjoaa keinon hallita suoraan, mihin sivustoihin kullakin lisäosalla on pääsy – käyttäjä voi myöntää ja peruuttaa lisäosan käyttöoikeuden mille tahansa sivustolle. Käyttöoikeuksien hallinta koskee vain luettelon kolmanteen versioon perustuvia lisäosia; luettelon toiseen versioon perustuville lisäosille ei suoriteta yksityiskohtaista pääsyn valvontaa sivustoille.

    Mozilla alkaa hyväksyä lisäosia, jotka perustuvat Chromen manifestin kolmanteen versioon
  • Muutos Cross-Origin-pyyntöjen käsittelyssä - uuden luettelon mukaan sisällönkäsittelyohjelmiin sovelletaan samoja luparajoituksia kuin pääsivulle, jolle nämä skriptit on upotettu (jos sivulla ei esimerkiksi ole pääsyä sijainnin API, silloin myös komentosarjan lisäosat eivät saa tätä käyttöoikeutta). Tämä muutos on täysin toteutettu Firefoxissa.
  • Lupauspohjainen API. Firefox tukee tätä sovellusliittymää, ja luettelon kolmas versio siirtää sen "chrome.*"-nimiavaruuteen.
  • Ulkoisilta palvelimilta ladatun koodin suorittamisen estäminen (puhumme tilanteista, joissa lisäosa latautuu ja suorittaa ulkoista koodia). Firefox käyttää ulkoista koodin estoa, ja Mozillan kehittäjät ovat lisänneet koodin lataamisen seurantatekniikoita, joita tarjotaan manifestin kolmannessa versiossa. Sisällönkäsittelyohjelmille tarjotaan erillinen sisällön pääsynrajoituskäytäntö (CSP, Content Security Policy).

Lähde: opennet.ru

Lisää kommentti