Chrome onAuthRequired: ตรวจสอบ isProxy ก่อนส่งข้อมูลรับรอง
คอลแบ็กการตรวจสอบสิทธิ์ของ Chrome สามารถอธิบายความท้าทายของพร็อกซีหรือความท้าทายของต้นทาง การให้ข้อมูลรับรองเดียวกันกับทั้งสองเป็นการบกพร่องของขอบเขตข้อมูลรับรอง
ส่วนขยายเบราว์เซอร์อาจพบความท้าทายการตรวจสอบสิทธิ์จากสองที่ที่แตกต่างกัน: พร็อกซีที่พาคำขอและเว็บไซต์ปลายทาง ทั้งสองไม่ควรได้รับบัญชีเดียวกันโดยอัตโนมัติ
ตัวแยกที่มีประโยชน์ในเหตุการณ์ webRequest.onAuthRequired ของ Chrome คือ isProxy คอลแบ็กที่ลบการตรวจสอบนั้นเพียงเพื่อให้พรอมป์ต์หายไปอาจเริ่มให้ข้อมูลรับรองของพร็อกซีกับความท้าทายของต้นทาง
จับคู่กับพร็อกซีที่คุณตั้งใจจะเชื่อถือ
การตรวจสอบ isProxy เป็นจุดเริ่มต้น จำกัดการจัดการกับผู้ท้าทายพร็อกซีที่คาดหวังและบริบทของคำขอด้วย ส่วนขยายที่จัดการหลายปลายทางควรเลือกบัญชีที่เป็นของปลายทางนั้น ไม่ใช่รหัสผ่านเดียวสำหรับทุกความท้าทาย
อย่าสมมติว่าการตั้งเส้นทางพร็อกซีและการจัดการการเข้าสู่ระบบเป็นสิทธิ์เดียวหรือการเรียก API เดียว Chrome จัดทำเอกสารแยกกัน ใช้เอกสารอ้างอิง webRequest ปัจจุบันสำหรับข้อมูลเหตุการณ์และสิทธิ์การตรวจสอบสิทธิ์ ตัวอย่างการลงทะเบียนตัวฟัง Manifest V3 แสดงการลงทะเบียนแบบซิงโครนัสและการเลือกบัญชีภายในคอลแบ็ก
ตรวจสอบรุ่นของแมนิเฟสต์
ตัวอย่างที่กล่าวถึง API WebRequest แบบทดลองมาจากส่วนขยายรุ่นเก่า ข้อกำหนดสิทธิ์ปัจจุบันขึ้นอยู่กับรุ่นแมนิเฟสต์ของส่วนขยายและรูปแบบการปรับใช้ โดยเฉพาะอย่างยิ่ง การจัดการการตรวจสอบสิทธิ์มีเส้นทางสิทธิ์ที่รองรับของตัวเอง ตัวอย่างตัวฟังแบบบล็อกที่ล้าสมัยไม่เพียงพอที่จะยืนยันว่าส่วนขยาย Manifest V3 สามารถเรียกใช้ได้โดยไม่เปลี่ยนแปลง
ตัวจัดการที่ถูกต้องต้องหลีกเลี่ยงการลองซ้ำข้อมูลรับรองเดิมที่ถูกปฏิเสธอย่างไม่สิ้นสุดด้วย ให้ถือว่าความท้าทายที่สองหลังจากการให้บัญชีเป็นหลักฐานที่ต้องตรวจสอบ ไม่ใช่คำขอให้เล่นรหัสผ่านซ้ำตลอดไป
ข้อมูลรับรองควรอยู่ในเส้นทางการจัดการที่ได้รับการป้องกันอย่างเหมาะสมของส่วนขยาย อย่าเผยแพร่ในไฟล์ PAC หรือฮาร์ดโค้ดในตัวอย่างที่แจกจ่าย เป้าหมายคือการเข้าสู่ระบบพร็อกซีที่มีขอบเขตแคบ ไม่ใช่กฎทั่วทั้งเบราว์เซอร์ที่ตอบทุกความท้าทายการตรวจสอบสิทธิ์ด้วยความลับเดียวกัน