หน้านี้แสดงวิธีเปิดใช้ App Check ในแอป Apple โดยใช้ผู้ให้บริการ DeviceCheck ในตัว เมื่อเปิดใช้ App Check คุณจะช่วยให้มั่นใจได้ว่ามีเพียงแอปของคุณเท่านั้นที่เข้าถึงทรัพยากร Firebase ของโปรเจ็กต์ได้ ดูภาพรวมของฟีเจอร์นี้
หากต้องการใช้ App Check กับผู้ให้บริการที่กำหนดเอง โปรดดูหัวข้อใช้ผู้ให้บริการ App Check ที่กำหนดเอง
1. ตั้งค่าโปรเจ็กต์ Firebase
เพิ่ม Firebase ลงในโปรเจ็กต์ Apple หากยังไม่ได้เพิ่ม
ในเว็บไซต์นักพัฒนาแอป Apple ให้สร้างคีย์ส่วนตัว DeviceCheck
ในคอนโซล Firebase ให้ไปที่ความปลอดภัย > App Check
ในแท็บแอป ให้ลงทะเบียนแอปเพื่อใช้ App Check กับผู้ให้บริการ DeviceCheck คุณจะต้องระบุคีย์ส่วนตัวที่สร้างในเว็บไซต์นักพัฒนาแอป Apple
โดยปกติแล้ว คุณจะต้องลงทะเบียนแอปทั้งหมดของโปรเจ็กต์ เนื่องจากเมื่อเปิดใช้การบังคับใช้สำหรับผลิตภัณฑ์ Firebase แล้ว จะมีเพียงแอปที่ลงทะเบียนเท่านั้นที่สามารถเข้าถึงทรัพยากรแบ็กเอนด์ของผลิตภัณฑ์ได้
ไม่บังคับ: ตั้งค่า Time to Live (TTL) ของโทเค็น
ในการตั้งค่าการลงทะเบียนแอป ให้ตั้งค่าระยะเวลาที่ใช้ได้ (TTL) ที่กำหนดเองสำหรับโทเค็น App Check ที่ผู้ให้บริการออกให้ คุณสามารถตั้งค่า TTL เป็นค่าใดก็ได้ระหว่าง 30 นาทีถึง 7 วัน เมื่อเปลี่ยนค่านี้ โปรดคำนึงถึงข้อดีข้อเสียต่อไปนี้
- ความปลอดภัย: TTL ที่สั้นลงจะให้ความปลอดภัยที่รัดกุมยิ่งขึ้น เนื่องจากช่วยลดกรอบเวลาที่ผู้โจมตีสามารถใช้โทเค็นที่รั่วไหลหรือถูกดักจับในทางที่ผิดได้
- ประสิทธิภาพ: TTL ที่สั้นลงหมายความว่าแอปจะทำการรับรองบ่อยขึ้น เนื่องจากกระบวนการรับรองแอปจะเพิ่มเวลาในการตอบสนองให้กับคำขอเครือข่ายทุกครั้งที่ดำเนินการ TTL ที่สั้นจึงอาจส่งผลต่อประสิทธิภาพของแอป
- โควต้าและค่าใช้จ่าย: TTL ที่สั้นลงและการรับรองอีกครั้งบ่อยครั้งจะทำให้โควต้าหมดเร็วขึ้น และอาจมีค่าใช้จ่ายมากขึ้นสำหรับบริการที่มีค่าใช้จ่าย ดูโควต้าและขีดจำกัด
TTL เริ่มต้นที่ 1 ชั่วโมง เหมาะสมสำหรับแอปส่วนใหญ่ โปรดทราบว่าไลบรารี App Check จะรีเฟรชโทเค็นที่ประมาณครึ่งหนึ่งของระยะเวลา TTL
2. เพิ่มไลบรารี App Check ลงในแอป
ใช้ Swift Package Manager เพื่อติดตั้งและจัดการทรัพยากร Dependency ของ Firebase
ใน Xcode ขณะที่โปรเจ็กต์แอปเปิดอยู่ ให้ไปที่ไฟล์ > เพิ่มแพ็กเกจ เพิ่มที่เก็บ SDK ของแพลตฟอร์ม Firebase Apple (
https://github.com/firebase/firebase-ios-sdk) แล้วเลือกไลบรารี FirebaseAppCheck
ขั้นตอนถัดไป
เมื่อติดตั้งไลบรารี App Check ในแอปแล้ว ให้เริ่มเผยแพร่แอปที่อัปเดตให้แก่ผู้ใช้
แอปไคลเอ็นต์ที่อัปเดตจะเริ่มส่งโทเค็น App Check พร้อมกับคำขอทุกรายการที่ส่งไปยัง Firebase แต่ผลิตภัณฑ์ Firebase จะไม่กำหนดให้โทเค็นต้องถูกต้องจนกว่าคุณจะเปิดใช้การบังคับใช้ในส่วน App Check ของคอนโซล Firebase
ตรวจสอบเมตริกและเปิดใช้การบังคับใช้
อย่างไรก็ตาม ก่อนเปิดใช้การบังคับใช้ คุณควรตรวจสอบว่าการดำเนินการดังกล่าวจะไม่รบกวนผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปที่น่าสงสัย คุณอาจต้องการเปิดใช้การบังคับใช้ให้เร็วขึ้น
คุณสามารถดูเมตริก App Check สำหรับบริการที่ใช้เพื่อช่วยในการตัดสินใจได้ดังนี้
- ตรวจสอบเมตริกคำขอ App Checkสำหรับ Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity สำหรับ iOS, Maps JavaScript API และ Places API (ใหม่)
- ตรวจสอบเมตริกคำขอ App Check สำหรับ Cloud Functions
เปิดใช้การบังคับใช้ App Check
เมื่อเข้าใจว่า App Check จะส่งผลต่อผู้ใช้อย่างไรและพร้อมที่จะดำเนินการต่อแล้ว คุณสามารถเปิดใช้การบังคับใช้ App Check ได้โดยทำดังนี้
- เปิดใช้การบังคับใช้ App Checkสำหรับ Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity สำหรับ iOS, Maps JavaScript API และ Places API (ใหม่)
- เปิดใช้การบังคับใช้ App Check สำหรับ Cloud Functions
ใช้ App Check ในสภาพแวดล้อมการแก้ไขข้อบกพร่อง
หลังจากลงทะเบียนแอปสำหรับ App Check แล้ว หากต้องการเรียกใช้แอปในสภาพแวดล้อมที่ปกติแล้ว App Check จะไม่จัดประเภทว่าถูกต้อง เช่น เครื่องจำลองในระหว่างการพัฒนา หรือจากสภาพแวดล้อมการรวมอย่างต่อเนื่อง (CI) คุณสามารถสร้างบิลด์การแก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่อง App Check แทนผู้ให้บริการเอกสารรับรองจริงได้
ดูหัวข้อใช้ App Check กับผู้ให้บริการแก้ไขข้อบกพร่องในแพลตฟอร์ม Apple