Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

ใช้ App Check กับผู้ให้บริการดีบักบนแพลตฟอร์ม Apple

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

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

ใช้ตัวให้บริการตรวจแก้จุดบกพร่องในโปรแกรมจำลอง

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

  1. ในการสร้างการแก้ไขข้อบกพร่อง ก่อนใช้บริการแบ็กเอนด์ของ 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];
  2. เปิดใช้งานการบันทึกการแก้ปัญหาในโครงการ Xcode ของคุณ (v11.0 หรือใหม่กว่า):

    1. เปิด Product > Scheme > แก้ไข Scheme
    2. เลือก เรียกใช้ จากเมนูด้านซ้าย จากนั้นเลือกแท็บ อาร์กิวเมนต์
    3. ในส่วน Arguments Passed on Launch ให้เพิ่ม -FIRDebugEnabled
  3. เปิดแอพ โทเค็นดีบักในเครื่องจะถูกบันทึกเมื่อ SDK พยายามส่งคำขอไปยังแบ็กเอนด์ ตัวอย่างเช่น:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. ในส่วนการ ตรวจสอบแอป ของคอนโซล Firebase ให้เลือก จัดการโทเค็นการแก้ไขจุดบกพร่อง จากเมนูรายการเพิ่มเติมของแอป จากนั้น ลงทะเบียนโทเค็นการแก้ปัญหาที่คุณเข้าสู่ระบบในขั้นตอนก่อนหน้า

    ภาพหน้าจอของรายการเมนู Manage Debug Tokens

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

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

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

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

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

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

    ภาพหน้าจอของรายการเมนู Manage Debug Tokens

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

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

  4. ใน Xcode ให้เพิ่มตัวแปรสภาพแวดล้อมให้กับแผนการทดสอบของคุณด้วยชื่อ FIRAAppCheckDebugToken และค่าเช่น $(APP_CHECK_DEBUG_TOKEN)

  5. กำหนดค่าสคริปต์ทดสอบ CI ของคุณเพื่อส่งโทเค็นดีบักเป็นตัวแปรสภาพแวดล้อม ตัวอย่างเช่น:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. ในการสร้างการแก้ไขข้อบกพร่อง ก่อนใช้บริการแบ็กเอนด์ของ 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 จะยอมรับโทเค็นที่ส่งมาว่าถูกต้อง