หลังจากบังคับใช้ App Check กับบริการแบ็กเอนด์แล้ว ฟีเจอร์ของแอปที่ขึ้นอยู่กับบริการแบ็กเอนด์ดังกล่าวจะไม่ทำงานในโปรแกรมจำลองหรือจากสภาพแวดล้อมการรวมอย่างต่อเนื่อง (CI) เนื่องจากสภาพแวดล้อมเหล่านี้ไม่ถือเป็นอุปกรณ์ที่ถูกต้อง หากต้องการเรียกใช้แอปในสภาพแวดล้อมเหล่านี้ระหว่างการพัฒนาและการทดสอบ คุณต้องสร้างบิลด์การแก้ไขข้อบกพร่องของแอปที่ใช้App Check ผู้ให้บริการแก้ไขข้อบกพร่องแทนผู้ให้บริการการรับรองเวอร์ชันที่ใช้งานจริง
แพลตฟอร์มของ Apple
วิธีใช้ผู้ให้บริการแก้ไขข้อบกพร่องขณะเรียกใช้แอปในโปรแกรมจำลอง แบบโต้ตอบ (เช่น ระหว่างการพัฒนาในเครื่อง) มีดังนี้
เปิดใช้งาน App Check ด้วยผู้ให้บริการแก้ไขข้อบกพร่องทันทีหลังจากที่คุณ เริ่มต้นแอป Firebase แล้ว
import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; // Import the firebase_app_check plugin import 'package:firebase_app_check/firebase_app_check.dart'; Future<void> main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); await FirebaseAppCheck.instance.activate( // Set appleProvider to `AppleProvider.debug` appleProvider: AppleProvider.debug, ); runApp(App()); }เปิดใช้การบันทึกการแก้ไขข้อบกพร่องในโปรเจ็กต์ Xcode (v11.0 ขึ้นไป) โดยทำดังนี้
- เปิดผลิตภัณฑ์ > รูปแบบ > แก้ไขรูปแบบ
- เลือกเรียกใช้จากเมนูด้านซ้าย แล้วเลือกแท็บอาร์กิวเมนต์
- ในส่วนอาร์กิวเมนต์ที่ส่งเมื่อตอนเริ่ม ให้เพิ่ม
-FIRDebugEnabled
รับโทเค็นการแก้ไขข้อบกพร่องโดยทำดังนี้
เปิด
ios/Runner.xcworkspaceด้วย Xcode แล้วเรียกใช้แอปใน โปรแกรมจำลองหรือในอุปกรณ์ทดสอบเปิดคอนโซล Xcode แล้วมองหาApp Checkโทเค็นการแก้ไขข้อบกพร่อง เช่น
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.คัดลอกโทเค็น (เช่น
123a4567-b89c-12d3-e456-789012345678)
ลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องกับ App Check โดยทำดังนี้
ในFirebaseคอนโซล ให้ไปที่ความปลอดภัย > App Check > แท็บแอป
ค้นหาแอปของคุณ คลิกเมนูรายการเพิ่มเติม () แล้วเลือก จัดการโทเค็นการแก้ไขข้อบกพร่อง
ทำตามวิธีการบนหน้าจอเพื่อลงทะเบียนโทเค็นการแก้ไขข้อบกพร่อง

หลังจากลงทะเบียนโทเค็นกับ App Check แล้ว บริการแบ็กเอนด์จะ ยอมรับโทเค็นดังกล่าวว่าถูกต้อง
โทเค็นนี้ช่วยให้เข้าถึงบริการแบ็กเอนด์ได้โดยไม่ต้องใช้อุปกรณ์ที่ถูกต้อง ดังนั้นคุณจึงต้องเก็บโทเค็นนี้ไว้เป็นส่วนตัว อย่าส่งไปยังที่เก็บข้อมูลสาธารณะหรือจัดส่งในบิลด์เวอร์ชันที่ใช้งานจริงของแอป หากโทเค็นที่ลงทะเบียนถูกบุกรุก ให้ลบทิ้งทันทีโดยใช้จัดการโทเค็นการแก้ไขข้อบกพร่องในคอนโซล Firebase
Android
วิธีใช้ผู้ให้บริการแก้ไขข้อบกพร่องขณะเรียกใช้แอปในโปรแกรมจำลอง แบบโต้ตอบ (เช่น ระหว่างการพัฒนาในเครื่อง) มีดังนี้
เปิดใช้งาน App Check ด้วยผู้ให้บริการแก้ไขข้อบกพร่องทันทีหลังจากที่คุณ เริ่มต้นแอป Firebase แล้ว
import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; // Import the firebase_app_check plugin import 'package:firebase_app_check/firebase_app_check.dart'; Future<void> main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); await FirebaseAppCheck.instance.activate( // Set androidProvider to `AndroidProvider.debug` androidProvider: AndroidProvider.debug, ); runApp(App()); }รับโทเค็นการแก้ไขข้อบกพร่องโดยทำดังนี้
เรียกใช้แอปในโปรแกรมจำลองหรือบนอุปกรณ์ทดสอบ
มองหาApp Checkโทเค็นการแก้ไขข้อบกพร่องในบันทึก เช่น
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678คัดลอกโทเค็น (เช่น
123a4567-b89c-12d3-e456-789012345678)
ลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องกับ App Check โดยทำดังนี้
ในFirebaseคอนโซล ให้ไปที่ความปลอดภัย > App Check > แท็บแอป
ค้นหาแอปของคุณ คลิกเมนูรายการเพิ่มเติม () แล้วเลือก จัดการโทเค็นการแก้ไขข้อบกพร่อง
ทำตามวิธีการบนหน้าจอเพื่อลงทะเบียนโทเค็นการแก้ไขข้อบกพร่อง

หลังจากลงทะเบียนโทเค็นกับ App Check แล้ว บริการแบ็กเอนด์จะ ยอมรับโทเค็นดังกล่าวว่าถูกต้อง
โทเค็นนี้ช่วยให้เข้าถึงบริการแบ็กเอนด์ได้โดยไม่ต้องใช้อุปกรณ์ที่ถูกต้อง ดังนั้นคุณจึงต้องเก็บโทเค็นนี้ไว้เป็นส่วนตัว อย่าส่งไปยังที่เก็บข้อมูลสาธารณะหรือจัดส่งในบิลด์เวอร์ชันที่ใช้งานจริงของแอป หากโทเค็นที่ลงทะเบียนถูกบุกรุก ให้ลบทิ้งทันทีโดยใช้จัดการโทเค็นการแก้ไขข้อบกพร่องในคอนโซล Firebase
เว็บ
วิธีใช้ผู้ให้บริการแก้ไขข้อบกพร่องขณะเรียกใช้แอปจาก localhost
(เช่น ระหว่างการพัฒนาในเครื่อง) มีดังนี้
ในไฟล์
web/index.htmlให้เปิดใช้โหมดแก้ไขข้อบกพร่องโดยตั้งค่าself.FIREBASE_APPCHECK_DEBUG_TOKENเป็นtrueดังนี้<body> <script> self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; </script> ... </body>เรียกใช้เว็บแอปในเครื่องและเปิดเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ของเบราว์เซอร์ คุณจะเห็นโทเค็นการแก้ไขข้อบกพร่องใน คอนโซลการแก้ไขข้อบกพร่อง เช่น
AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work.โทเค็นนี้จะจัดเก็บไว้ในเบราว์เซอร์ของคุณภายในเครื่อง และจะใช้ทุกครั้งที่คุณ ใช้แอปในเบราว์เซอร์เดียวกันในเครื่องเดียวกัน หากต้องการใช้ โทเค็นในเบราว์เซอร์อื่นหรือในเครื่องอื่น ให้ตั้งค่า
self.FIREBASE_APPCHECK_DEBUG_TOKENโทเค็นเป็นสตริงโทเค็นแทนtrueลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องกับ App Check โดยทำดังนี้
ในFirebaseคอนโซล ให้ไปที่ความปลอดภัย > App Check > แท็บแอป
ค้นหาแอปของคุณ คลิกเมนูรายการเพิ่มเติม () แล้วเลือก จัดการโทเค็นการแก้ไขข้อบกพร่อง
ทำตามวิธีการบนหน้าจอเพื่อลงทะเบียนโทเค็นการแก้ไขข้อบกพร่อง

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