หากหลังจากลงทะเบียนแอปสำหรับ App Check แล้ว คุณต้องการเปิดใช้แอปในสภาพแวดล้อมที่ปกติแล้ว App Check จะไม่จัดว่าถูกต้อง เช่น โปรแกรมจำลองระหว่างการพัฒนา หรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสามารถ สร้างบิลด์แก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการตรวจแก้จุดบกพร่อง App Check แทนผู้ให้บริการรับรองจริง
ใช้ตัวให้บริการตรวจแก้จุดบกพร่องในโปรแกรมจำลอง
หากต้องการใช้ตัวให้บริการแก้ไขจุดบกพร่องขณะเรียกใช้แอปของคุณในโปรแกรมจำลองแบบโต้ตอบ (เช่น ระหว่างการพัฒนา) ให้ทำดังต่อไปนี้:
ในการสร้างการแก้ไขข้อบกพร่อง ก่อนใช้บริการแบ็กเอนด์ของ Firebase ให้สร้างและตั้งค่าโรงงานผู้ให้บริการตรวจแก้ข้อบกพร่องของแอป:
สวิฟต์
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
วัตถุประสงค์-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
เปิดใช้งานการบันทึกการแก้ปัญหาในโครงการ Xcode ของคุณ (v11.0 หรือใหม่กว่า):
- เปิด Product > Scheme > แก้ไข Scheme
- เลือก เรียกใช้ จากเมนูด้านซ้าย จากนั้นเลือกแท็บ อาร์กิวเมนต์
- ในส่วน Arguments Passed on Launch ให้เพิ่ม
-FIRDebugEnabled
เปิดแอพ โทเค็นดีบักในเครื่องจะถูกบันทึกเมื่อ SDK พยายามส่งคำขอไปยังแบ็กเอนด์ ตัวอย่างเช่น:
[Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token: 123a4567-b89c-12d3-e456-789012345678
ในส่วน การตรวจสอบแอป ของคอนโซล Firebase ให้เลือก จัดการโทเค็นการแก้ไขจุดบกพร่อง จากเมนูรายการเพิ่มเติมของแอป จากนั้น ลงทะเบียนโทเค็นการแก้ปัญหาที่คุณเข้าสู่ระบบในขั้นตอนก่อนหน้า
หลังจากที่คุณลงทะเบียนโทเค็นแล้ว บริการแบ็กเอนด์ของ Firebase จะยอมรับว่าโทเค็นนั้นถูกต้อง
เนื่องจากโทเค็นนี้อนุญาตให้เข้าถึงทรัพยากร Firebase ของคุณโดยไม่ต้องใช้อุปกรณ์ที่ถูกต้อง คุณจึงต้องรักษาความเป็นส่วนตัวไว้ อย่าผูกมัดกับที่เก็บข้อมูลสาธารณะ และหากโทเค็นที่ลงทะเบียนเคยถูกบุกรุก ให้เพิกถอนทันทีในคอนโซล Firebase
ใช้ผู้ให้บริการตรวจแก้จุดบกพร่องในสภาพแวดล้อม CI
หากต้องการใช้ตัวให้บริการแก้ไขจุดบกพร่องในสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) ให้ทำดังต่อไปนี้:
ในส่วน การตรวจสอบแอป ของคอนโซล Firebase ให้เลือก จัดการโทเค็นการแก้ไขจุดบกพร่อง จากเมนูรายการเพิ่มเติมของแอป จากนั้น สร้างโทเค็นการแก้ปัญหาใหม่ คุณจะต้องใช้โทเค็นในขั้นตอนถัดไป
เนื่องจากโทเค็นนี้อนุญาตให้เข้าถึงทรัพยากร Firebase ของคุณโดยไม่ต้องใช้อุปกรณ์ที่ถูกต้อง คุณจึงต้องรักษาความเป็นส่วนตัวไว้ อย่าผูกมัดกับที่เก็บข้อมูลสาธารณะ และหากโทเค็นที่ลงทะเบียนเคยถูกบุกรุก ให้เพิกถอนทันทีในคอนโซล Firebase
เพิ่มโทเค็นการแก้ไขจุดบกพร่องที่คุณเพิ่งสร้างไปยังที่เก็บคีย์ที่ปลอดภัยของระบบ CI ของคุณ (เช่น ความลับที่เข้ารหัส ของ GitHub Actions หรือ ตัวแปรที่เข้ารหัส ของ Travis CI)
หากจำเป็น ให้กำหนดค่าระบบ CI ของคุณเพื่อทำให้โทเค็นการแก้ไขจุดบกพร่องของคุณพร้อมใช้งานภายในสภาพแวดล้อม CI เป็นตัวแปรสภาพแวดล้อม ตั้งชื่อตัวแปรว่า
APP_CHECK_DEBUG_TOKEN_FROM_CI
ใน Xcode ให้เพิ่มตัวแปรสภาพแวดล้อมให้กับรูปแบบการทดสอบของคุณโดยใช้ชื่อ
FIRAAppCheckDebugToken
และค่าเช่น$(APP_CHECK_DEBUG_TOKEN)
กำหนดค่าสคริปต์ทดสอบ CI ของคุณเพื่อส่งโทเค็นดีบักเป็นตัวแปรสภาพแวดล้อม ตัวอย่างเช่น:
xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \ APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
ในการสร้างการแก้ไขข้อบกพร่อง ก่อนใช้บริการแบ็กเอนด์ของ Firebase ให้สร้างและตั้งค่าโรงงานผู้ให้บริการตรวจแก้ข้อบกพร่องของแอป:
สวิฟต์
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
วัตถุประสงค์-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
เมื่อแอปของคุณทำงานในสภาพแวดล้อม CI บริการแบ็กเอนด์ของ Firebase จะยอมรับโทเค็นที่ส่งมาว่าถูกต้อง