ใช้ App Check กับผู้ให้บริการแก้ไขข้อบกพร่องในเว็บแอป

หากคุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่ App Check ไม่ได้จัดประเภทว่าถูกต้องหลังจากลงทะเบียนแอปหลังจากลงทะเบียน App Check แล้วตามปกติ เช่น ใช้ได้ในระหว่างการพัฒนาหรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสร้างบิลด์การแก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่องของ App Check แทนผู้ให้บริการเอกสารรับรองจริงได้

ใช้ผู้ให้บริการแก้ไขข้อบกพร่องใน localhost

หากต้องการใช้ผู้ให้บริการแก้ไขข้อบกพร่องขณะเรียกใช้แอปจาก localhost (เช่น ระหว่างการพัฒนา) ให้ทำดังนี้

  1. ในบิลด์การแก้ไขข้อบกพร่อง ให้เปิดใช้โหมดแก้ไขข้อบกพร่องโดยตั้งค่า self.FIREBASE_APPCHECK_DEBUG_TOKEN เป็น true ก่อนเริ่มต้น App Check ตัวอย่างเช่น

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. ไปที่เว็บแอปในเครื่องและเปิดเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ของเบราว์เซอร์ คุณจะเห็นโทเค็นการแก้ไขข้อบกพร่องในคอนโซลแก้ไขข้อบกพร่อง

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. ในส่วน App Check ของคอนโซล Firebase ให้เลือกจัดการโทเค็นการแก้ไขข้อบกพร่องจากเมนูรายการเพิ่มเติมของแอป จากนั้นลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องที่คุณบันทึกไว้ในขั้นตอนก่อนหน้า

    ภาพหน้าจอของรายการเมนูจัดการโทเค็นการแก้ไขข้อบกพร่อง

หลังจากที่ลงทะเบียนโทเค็นแล้ว บริการแบ็กเอนด์ของ Firebase จะยอมรับโทเค็นว่าถูกต้อง

เนื่องจากโทเค็นนี้ทำให้เข้าถึงทรัพยากร Firebase ได้โดยไม่ต้องมีอุปกรณ์ที่ถูกต้อง คุณจึงต้องรักษาโทเค็นให้เป็นส่วนตัว อย่าส่งไปยังที่เก็บสาธารณะและหากโทเค็นที่ลงทะเบียนถูกบุกรุก ให้เพิกถอนโทเค็นทันทีในคอนโซล Firebase

ระบบจะจัดเก็บโทเค็นนี้ไว้ภายในเบราว์เซอร์และจะใช้ทุกครั้งที่คุณใช้แอปในเบราว์เซอร์เดียวกันบนเครื่องเดียวกัน หากต้องการใช้โทเค็นในเบราว์เซอร์อื่นหรือเครื่องอื่น ให้ตั้งค่า self.FIREBASE_APPCHECK_DEBUG_TOKEN เป็นสตริงโทเค็นแทน true

ใช้ผู้ให้บริการแก้ไขข้อบกพร่องในสภาพแวดล้อม CI

หากต้องการใช้ผู้ให้บริการแก้ไขข้อบกพร่องในสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) ให้ทำดังนี้

  1. ในส่วน App Check ของคอนโซล Firebase ให้เลือกจัดการโทเค็นการแก้ไขข้อบกพร่องจากเมนูรายการเพิ่มเติมของแอป จากนั้นจึงสร้างโทเค็นการแก้ไขข้อบกพร่องใหม่ คุณจะต้องใช้โทเค็นในขั้นตอนถัดไป

    เนื่องจากโทเค็นนี้ทำให้เข้าถึงทรัพยากร Firebase ได้โดยไม่ต้อง ใช้อุปกรณ์ที่ถูกต้อง คุณจึงต้องรักษาโทเค็นให้เป็นส่วนตัว อย่าส่งไปยังที่เก็บสาธารณะและหากโทเค็นที่ลงทะเบียนถูกบุกรุก ให้เพิกถอนโทเค็นทันทีในคอนโซล Firebase

    ภาพหน้าจอของรายการเมนูจัดการโทเค็นการแก้ไขข้อบกพร่อง

  2. เพิ่มโทเค็นการแก้ไขข้อบกพร่องที่คุณเพิ่งสร้างไปยังที่เก็บข้อมูลคีย์ที่ปลอดภัยของระบบ CI (เช่น ข้อมูลลับที่เข้ารหัสของ GitHub Actions หรือตัวแปรที่เข้ารหัสของ Travis CI)

  3. หากจำเป็น ให้กำหนดค่าระบบ CI เพื่อให้โทเค็นการแก้ไขข้อบกพร่องของคุณใช้งานได้ภายในสภาพแวดล้อม CI เป็นตัวแปรสภาพแวดล้อม ตั้งชื่อตัวแปร เช่น APP_CHECK_DEBUG_TOKEN_FROM_CI

  4. ในบิลด์การแก้ไขข้อบกพร่อง ให้เปิดใช้โหมดแก้ไขข้อบกพร่องโดยตั้งค่า self.FIREBASE_APPCHECK_DEBUG_TOKEN เป็นค่าของตัวแปรสภาพแวดล้อมโทเค็นการแก้ไขข้อบกพร่องก่อนนำเข้า App Check ตัวอย่างเช่น

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

เมื่อแอปทำงานในสภาพแวดล้อม CI บริการแบ็กเอนด์ของ Firebase จะยอมรับโทเค็นที่แอปส่งมาว่าถูกต้อง