Irreġistra wieħed li jisma' l-awtentikazzjoni tal-proxy ta' Chrome MV3 għall-bdil tal-profil
Irreġistra s-sema' tal-awtentikazzjoni ta' Manifest V3 b'mod sinkroniku u aqra l-kont tal-proxy attwali fil-callback tal-avveniment.
Il-bdil tal-profili tal-proxy għandu jbiddel il-kont magħżul, mhux iżid sema' onAuthRequired ieħor. Inkella closures qodma jistgħu jibqgħu jwiegħdu bil-kont minn għażla preċedenti.
Irreġistra sema' wieħed bl-isem fil-livell ta' fuq tas-service worker. Aqra l-kont attwali meta jasal avveniment:
function answerProxyChallenge(details, reply) {
if (!details.isProxy) {
reply({});
return;
}
chrome.storage.session.get('selectedProxy').then(({selectedProxy: p}) => {
if (!p || details.challenger.host !== p.host ||
details.challenger.port !== p.port) {
reply({});
return;
}
reply({authCredentials: {username: p.username, password: p.password}});
}).catch(() => reply({cancel: true}));
}
chrome.webRequest.onAuthRequired.addListener(
answerProxyChallenge,
{urls: ['<all_urls>']},
['asyncBlocking'],
);Dan il-framment jassumi li l-estensjoni diġà taħżen il-proxy HTTP magħżul taħt selectedProxy, b'port numeriku u l-kont maħsub. Il-manifest jeħtieġ webRequest, webRequestAuthProvider, storage u l-permessi tal-host meħtieġa. L-għażla tal-proxy nnifisha wkoll teħtieġ il-permess proxy.
Ir-reġistrazzjoni ssir b'mod sinkroniku. Il-ħażna tinqara fil-callback, wara li Chrome ikollu sema' installat biex jibgħat lilu. Li tirreġistra biss wara li tiġi solvuta promise tal-ħażna inizjali toħloq vojt fil-qawmien.
Żid limitu ta' rifjut qabel il-ħruġ
Il-framment juri r-reġistrazzjoni u l-għażla tal-kont. Żid rekord ta' tentattivi mill-ġdid limitat għal kull talba sabiex password miċħuda ma tiġix sottomessa bla tarf. Naddaf dak ir-rekord mal-kompletament jew mal-falliment. Il-globals tal-worker jistgħu jisparixxu meta l-worker jieqaf, għalhekk żomm l-istat meħtieġ bejn il-qawmien f'żona tal-ħażna adatta tal-estensjoni.
storage.session jgħix mill-ġdid tal-worker fi ħdan is-sessjoni tal-browser; mhuwiex ħażna permanenti tal-kont bejn il-ġdid tal-browser. Iddefinixxi x'tagħmel l-estensjoni meta ma jkunx hemm kont magħżul disponibbli.
Il-kontrolli isProxy u challenger jipprevjenu sfida ta' sit web mhux relatat milli tirċievi dan il-kont. Jekk il-browser qatt ma jibgħat l-avveniment, it-tindif tas-sema' waħdu ma jistax jipproduċih: eżamina t-talba attwali, il-permessi u l-imġiba tal-browser separatament.