Google жарнама блокаторлорунда талап кылынган APIди чектөөнү талап кылууну улантууда

Симеон Винсент, Chrome тайпасындагы кеңейтүүлөрдү иштеп чыгуучулар менен иштешүүгө жооптуу (кеңейтүүлөрдү иштеп чыгуучулардын адвокаты кызматын ээлейт), жорум Chrome манифестинин үчүнчү басылышына карата Google'дун учурдагы абалы, бузуу иш туура эмес мазмунду бөгөттөө жана коопсуздукту камсыз кылуу үчүн көптөгөн кошумчалар. Компания алынган мазмунду тез арада өзгөртүүгө мүмкүндүк берген webRequest API бөгөттөө режимин колдоону токтотуу боюнча баштапкы планынан баш тартууга ниеттенбейт. Chrome'дун ишканалык чыгарылышында гана өзгөчөлүк болот (Ишкана үчүн Chrome), анда webRequest API колдоо мурункудай сакталат.

Кадимки Chrome API колдонуучулары үчүн webRequest окуу үчүн гана режими менен чектелет. Мазмунду чыпкалоо үчүн webRequest API алмаштыруу үчүн декларативдик API сунушталды declarativeNetRequest, бул заманбап жарнама блокаторлордо колдонулган мүмкүнчүлүктөрдүн чектелген бөлүгүн камтыйт. Негизи, тармактык суроо-талаптарга толук мүмкүнчүлүгү бар проприетардык иштетүүчүлөрдүн ордуна, блокировкалоо эрежелерин өз алдынча иштеткен даяр универсалдуу орнотулган чыпкалоочу кыймылдаткыч сунушталат. Мисалы, declarativeNetRequest API өзүңүздүн чыпкалоо алгоритмдериңизди колдонууга мүмкүндүк бербейт жана шарттарга жараша бири-бирин кайталаган татаал эрежелерди түзүүгө мүмкүндүк бербейт.

Жарнама бөгөттөөчү кошумчаларды иштеп чыгуучулар биргелешип даярдашкан комментарийлердин тизмеси, анда declarativeNetRequest API кемчиликтери тизмеленген. Google көптөгөн комментарийлерге макул болуп, declarativeNetRequest API'ге кошулду. Атап айтканда, динамикалык түрдө өзгөртүү жана эрежелерди кошуу үчүн колдоо кошулду жана HTTP аталыштарын жок кылууга болот, бирок ак тизмедегилерди гана (Referer, Cookie, Set-Cookie). Биз HTTP аталыштарын кошуу жана алмаштыруу (мисалы, Set-Cookie алмаштыруу жана CSP директивалары үчүн) жана суроо-талаптын параметрлерин жок кылуу жана алмаштыруу мүмкүнчүлүгүн ишке ашырууну пландаштырып жатабыз.

Chrome кошумчаларына берилген мүмкүнчүлүктөрдүн жана ресурстардын тизмесин аныктаган манифесттин үчүнчү версиясынын алдын ала версиясын жакынкы айларда Chrome Canary эксперименталдык түзүмдөрүндө сыноо үчүн колдонуу пландаштырылууда.

Ошол эле учурда, webRequest API аркылуу алынган мазмунду өзгөртүүгө тыюу салуу мотиви толугу менен ачык-айкын эмес. WebRequest API'нин бөгөттөө режими иштөөгө терс таасирин тийгизет деген дооматтар, браузер баракты көрсөтүүдөн мурун кошумча иштеткичтин ишин бүтүргөнчө күтөт, сынга туруштук бербейт. Мурда жүргүзүлгөн тесттер Жарнамаларды бөгөттөөчү кошумчалардын иштеши алар киргизген кечиктирүү анчалык деле маанилүү эмес экенин көрсөттү. Орточо алганда, блокаторду колдонуу суроо-талаптын аткарылышын миллисекунддун бир бөлүгүнө гана жайлатат, бул жалпы фонго салыштырмалуу анча деле маанилүү эмес.

Колдонуучуларды мазмунга кошумчалардын көзөмөлсүз кирүүсүнөн коргоо каалоосу менен байланышкан экинчи аргумент да ынанымдуу көрүнбөйт, анткени мыйзамдуу кошумчалардагы көптөн бери калыптанып калган жана кеңири таралган функцияларды алып салуунун ордуна, жаңысын кошууга мүмкүн болгон. ыйгарым укуктун түрү жана колдонуучуга тармак суроо-талаптарына толук жетүү мүмкүнчүлүгү бар кошумчаны орнотуунун акыркы тандоосу менен камсыз кылат. Кошумчалай кетсек, Google webRequest API'ни окуу үчүн гана режимде колдонууну колдоону калтырды, бул трафикти төмөнкү деңгээлдеги кийлигишүүсүз толук көзөмөлдөөгө мүмкүндүк берет.
Кошумчалар жүктөлгөн веб-баракчалардын мазмунун башка API'лер аркылуу өзгөртө алат (мисалы, зыяндуу кошумчалар дагы эле өз жарнактарын жеткирип, кенчилерди ишке киргизип, киргизүү формаларынын мазмунун талдай алат).

Raymond Hill, керексиз мазмунду бөгөттөө үчүн uBlock Origin жана uMatrix системаларынын автору, абдан катуу жорум Google өкүлүнүн жообу жана демагогия жана көшөгө артындагы оюндарды кыйытты, анда Google жакшы мүмкүнчүлүккө жамынып, Интернет-жарнама чөйрөсүндөгү бизнес кызыкчылыктарын алдыга жылдырууга, чыпкалоо механизмдерин көзөмөлдөөгө жана актоого аракет кылып жатат. бул аракеттер жалпы коомчулуктун алдында.

Ал эч качан кошумча иштеп чыгуучулардын арасында кеңири таралган жана популярдуу APIди токтотуу зарылдыгы жөнүндө ынанымдуу аргументтерди алган эмес. Рэймонддун айтымында, аткаруунун төмөндөшү аргумент эмес, анткени баракчалар туура киргизилген кошумчаларда webRequest бөгөттөө режимин колдонуудан эмес, алардын толгондугунан улам жай жүктөлөт. Эгер Google чындап эле өндүрүмдүүлүккө кам көрсө, алар механизмдин негизинде webRequestти кайра иштеп чыгышмак убада, окшоштугу боюнча ишке ашыруу Firefox ичинде webRequest.

Рэймонддун айтымында, Google'дун стратегиясы Chrome'дун колдонуучу базасын кеңейтүү менен контент блокаторлорду колдонуудан келип чыккан бизнеске зыяндын ортосундагы оптималдуу балансты аныктоо болуп саналат. Chrome экспансиясынын биринчи этабында Google колдонуучулар арасында эң популярдуу кошумчалардын бири катары жарнама блокаторлорун көтөрүүгө аргасыз болгон. Бирок Chrome үстөмдүк кылгандан кийин, компания балансты өз пайдасына өзгөртүүгө жана бөгөт коюуну көзөмөлдөөгө аракет кылган демилге туура эмес жарнаманы бөгөттөө функциясын Chrome'го интеграциялоо үчүн. webRequest API бул максатты жокко чыгарат, анткени мазмунду бөгөттөө боюнча көзөмөл учурда үчүнчү тараптын жарнама блокаторун иштеп чыгуучулардын колунда.

Source: opennet.ru

Комментарий кошуу