ในกรณีที่ลงทะเบียนแอปสำหรับ App Check แล้วคุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่ App Check มักไม่จัดว่าใช้งานได้ เช่น เครื่องจำลองระหว่างการพัฒนาหรือจากสภาพแวดล้อมการผสานรวมแบบต่อเนื่อง (CI) คุณจะสร้างบิลด์การแก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่อง App Check แทน App Attest ได้
ใช้ผู้ให้บริการแก้ไขข้อบกพร่องในเครื่องจำลอง
หากต้องการใช้ผู้ให้บริการแก้ไขข้อบกพร่องขณะเรียกใช้แอปในเครื่องจำลองแบบอินเทอร์แอกทีฟ (เช่น ในระหว่างการพัฒนา) ให้ทำดังนี้
ค้นหาคีย์ API สำหรับ iOS สำหรับโปรเจ็กต์ของคุณในหน้าข้อมูลเข้าสู่ระบบของส่วน API และบริการของคอนโซล Google Cloud
ในบิลด์การแก้ไขข้อบกพร่อง ให้กำหนดค่า App Check เพื่อใช้ผู้ให้บริการแก้ไขข้อบกพร่อง คุณจะต้องระบุคีย์ API ที่ได้รับในขั้นตอนก่อนหน้า
#if targetEnvironment(simulator) GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in if let error { print("Error configuring `GIDSignIn` for App Check: \(error)") } } #else // Configure App Check for production. #endif
เปิดแอป ระบบจะบันทึกโทเค็นการแก้ไขข้อบกพร่องในเครื่องไปยังคอนโซล Xcode เมื่อ SDK พยายามส่งคำขอไปยังแบ็กเอนด์ เช่น
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
ในส่วน App Check ของคอนโซล Firebase ให้เลือกจัดการโทเค็นการแก้ไขข้อบกพร่องจากเมนูรายการเพิ่มเติมของแอป จากนั้นลงทะเบียนโทเค็นการแก้ไขข้อบกพร่องที่คุณบันทึกในขั้นตอนก่อนหน้า
หลังจากที่ลงทะเบียนโทเค็นแล้ว ปลายทาง OAuth 2.0 ของ Google จะยอมรับโทเค็นนั้นว่าถูกต้องสำหรับโปรเจ็กต์ของคุณ
เนื่องจากโทเค็นนี้ให้สิทธิ์เข้าถึงปลายทางการตรวจสอบสิทธิ์โดยไม่ต้องมีอุปกรณ์ที่ถูกต้อง คุณจึงต้องเก็บข้อมูลไว้เป็นส่วนตัว อย่าคอมมิตโทเค็นไปยังที่เก็บสาธารณะ และหากโทเค็นที่ลงทะเบียนไว้ถูกละเมิด ให้เพิกถอนโทเค็นนั้นในคอนโซล Firebase ทันที
ใช้ผู้ให้บริการแก้ไขข้อบกพร่องในสภาพแวดล้อม CI
หากต้องการใช้ผู้ให้บริการแก้ไขข้อบกพร่องในสภาพแวดล้อมการรวมอย่างต่อเนื่อง (CI) ให้ทำดังนี้
ในส่วน App Check ของคอนโซล 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)
ค้นหาคีย์ API สำหรับ iOS สำหรับโปรเจ็กต์ของคุณในหน้าข้อมูลเข้าสู่ระบบของส่วน API และบริการของคอนโซล Google Cloud
ในบิลด์การแก้ไขข้อบกพร่อง ให้กำหนดค่า App Check เพื่อใช้ผู้ให้บริการแก้ไขข้อบกพร่อง คุณจะต้องระบุคีย์ API ที่ได้รับในขั้นตอนก่อนหน้า
#if targetEnvironment(simulator) GIDSignIn.sharedInstance.configureDebugProvider(withAPIKey: apiKey) { error in if let error { print("Error configuring `GIDSignIn` for App Check: \(error)") } } #else // Configure App Check for production. #endif
เมื่อแอปทำงานในสภาพแวดล้อม CI ปลายทางของ OAuth 2.0 ของ Google จะยอมรับโทเค็นที่แอปส่งเข้ามาว่าใช้งานได้สำหรับโปรเจ็กต์ของคุณ