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

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

ใช้ผู้ให้บริการตรวจแก้จุดบกพร่องบน localhost

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

  1. ในเวอร์ชันการแก้ไขข้อบกพร่อง ให้เปิดใช้งานโหมดแก้ไขข้อบกพร่องโดยตั้งค่า self.FIREBASE_APPCHECK_DEBUG_TOKEN ให้ true ก่อนที่คุณจะเริ่มต้น App Check ตัวอย่างเช่น:

    API แบบโมดูลาร์ของเว็บ

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

    API เนมสเปซของเว็บ

    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. ในส่วน การตรวจสอบแอป ของคอนโซล Firebase ให้เลือก จัดการโทเค็นการแก้ไขข้อบกพร่อง จากเมนูรายการเพิ่มเติมของแอป จากนั้น ลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องที่คุณบันทึกไว้ในขั้นตอนก่อนหน้า

    สกรีนช็อตของรายการเมนูจัดการโทเค็น Debug

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

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

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

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

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

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

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

    สกรีนช็อตของรายการเมนูจัดการโทเค็น Debug

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

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

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

    API แบบโมดูลาร์ของเว็บ

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

    API เนมสเปซของเว็บ

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

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