'n Blaaieruitbreiding kan verifikasie-uitdagings van twee verskillende plekke teekom: die instaanbediener wat die versoek dra en die bestemming-webwerf. Hulle moet nie outomaties dieselfde rekening ontvang nie.

Die nuttige onderskeier in Chrome se webRequest.onAuthRequired-gebeurtenis is isProxy. 'n Terugroep wat daardie kontrole verwyder bloot om 'n opdrag te laat verdwyn, kan begin om instaanbediener-aanmeldingsgegewens aan 'n oorsprong-uitdaging te verskaf.

Pas by die instaanbediener wat jy bedoel om te vertrou

Om isProxy na te gaan is 'n begin. Beperk ook die hantering tot die verwagte instaanbediener-uitdager en versoekkonteks. 'n Uitbreiding wat verskeie eindpunte bestuur, moet die rekening kies wat aan daardie eindpunt behoort, nie 'n enkele globale wagwoord vir elke uitdaging nie.

Moenie aanvaar dat die instel van die instaanbediener-roete en die hantering van sy aanmelding een toestemming of een API-oproep is nie. Chrome dokumenteer hulle afsonderlik. Gebruik die huidige webRequest-verwysing vir gebeurtenisdata en verifikasiestoestemmings. 'n Voorbeeld van die registrasie van 'n Manifest V3-luisteraar wys sinchroniese registrasie en rekeningkeuse binne die terugroep.

Kontroleer die manifest-generasie

Voorbeelde wat 'n eksperimentele WebRequest-API noem, kom uit ou uitbreidingsvrystellings. Huidige toestemmingsvereistes hang af van die uitbreiding se manifest-generasie en ontplooiingsmodel. Verifikasiehandering het veral sy eie ondersteunde toestemmingspad; 'n verouderde blokkerende luisteraar-voorbeeld is nie genoeg om vas te stel dat 'n Manifest V3-uitbreiding dit onveranderd kan uitvoer nie.

'n Korrekte hanteerder moet ook vermy om dieselfde verworpe aanmeldingsgegewens onbepaald te herprobeer. Behandel 'n tweede uitdaging na 'n verskafde rekening as bewyse om te ondersoek, eerder as 'n versoek om die wagwoord vir ewig te herspeel.

Aanmeldingsgegewens moet in die uitbreiding se toepaslike beskermde hanteringspad bly. Moenie dit in 'n PAC-leer publiseer of in 'n verspreide voorbeeld hardkodeer nie. Die doel is 'n eng beperkte instaanbediener-aanmelding, nie 'n blaaierwye reel wat elke verifikasie-uitdaging met dieselfde geheim beantwoord nie.

Verwante artikels