Ang isang extension ng browser ay maaaring makatagpo ng mga hamon sa pagpapatotoo mula sa dalawang magkaibang lugar: ang proxy na nagdadala ng kahilingan at ang destinasyong website. Hindi sila dapat awtomatikong makatanggap ng parehong account.

Ang kapaki-pakinabang na tagapag-iba sa kaganapang webRequest.onAuthRequired ng Chrome ay isProxy. Ang isang callback na nag-aalis ng pagsusuring iyon para lamang mawala ang isang prompt ay maaaring magsimulang magbigay ng mga kredensyal ng proxy sa isang hamon sa origin.

Itugma sa proxy na nais mong pagkatiwalaan

Ang pagsuri sa isProxy ay isang simula. Limitahan din ang paghawak sa inaasahang humahamon ng proxy at sa konteksto ng kahilingan. Ang isang extension na namamahala ng maraming endpoint ay dapat pumili ng account na kabilang sa endpoint na iyon, hindi isang pandaigdigang password para sa bawat hamon.

Huwag ipagpalagay na ang pagtatakda ng ruta ng proxy at paghawak ng login nito ay isang pahintulot o isang tawag sa API. Hiwalay na idinodokumento ng Chrome ang mga ito. Gamitin ang kasalukuyang sanggunian ng webRequest para sa data ng kaganapan at mga pahintulot sa pagpapatotoo. Ang halimbawa ng pagpaparehistro ng tagapakinig ng Manifest V3 ay nagpapakita ng synchronous na pagpaparehistro at pagpili ng account sa loob ng callback.

Tingnan ang henerasyon ng manifest

Ang mga halimbawang bumanggit ng isang eksperimental na WebRequest API ay nagmula sa mga lumang release ng extension. Ang kasalukuyang mga kinakailangan sa pahintulot ay nakadepende sa henerasyon ng manifest ng extension at modelo ng deployment. Sa partikular, ang paghawak ng pagpapatotoo ay may sariling sinusuportahang landas ng pahintulot; ang isang laos na halimbawa ng humaharang na tagapakinig ay hindi sapat upang patunayan na ang isang extension ng Manifest V3 ay maaaring magpatakbo nito nang walang pagbabago.

Ang isang tamang handler ay dapat ding umiwas sa walang hanggang pagsubok muli ng parehong tinanggihang kredensyal. Ituring ang isang pangalawang hamon pagkatapos maibigay ang isang account bilang ebidensyang dapat imbestigahan, hindi bilang kahilingang paulit-ulit na i-play ang password magpakailanman.

Ang mga kredensyal ay dapat manatili sa angkop na protektadong landas ng paghawak ng extension. Huwag ilathala ang mga ito sa isang PAC file o i-hardcode sa isang ipinamahaging halimbawa. Ang layunin ay isang makitid na saklaw na proxy login, hindi isang tuntunin sa buong browser na sinasagot ang bawat hamon sa pagpapatotoo gamit ang parehong sikreto.

Kaugnay na mga artikulo