หน้านี้จะแสดงวิธีเปิดใช้ App Check ในแอป Apple โดยใช้ผู้ให้บริการ DeviceCheck ในตัว เมื่อเปิดใช้ App Check จะเป็นการช่วยตรวจสอบว่าจะมีเพียงแอปของคุณเท่านั้นที่เข้าถึงทรัพยากร Firebase ของโปรเจ็กต์ได้ ดูภาพรวมของฟีเจอร์นี้
หากต้องการใช้ App Check กับผู้ให้บริการที่กําหนดเอง ให้ดูหัวข้อติดตั้งใช้งานผู้ให้บริการ App Check ที่กําหนดเอง
1. สร้างโปรเจ็กต์ Firebase
เพิ่ม Firebase ลงในโปรเจ็กต์ Apple หากคุณยังไม่ได้ดำเนินการ
สร้างคีย์ส่วนตัวของ DeviceCheck ในเว็บไซต์ของนักพัฒนาแอปของ Apple
ลงทะเบียนแอปเพื่อใช้ App Check กับผู้ให้บริการ DeviceCheck ในส่วน App Check ของคอนโซล Firebase คุณจะต้องระบุคีย์ส่วนตัวที่สร้างไว้ในขั้นตอนก่อนหน้า
โดยปกติแล้ว คุณจะต้องลงทะเบียนแอปทั้งหมดของโปรเจ็กต์ เนื่องจากเมื่อเปิดใช้การบังคับใช้สำหรับผลิตภัณฑ์ Firebase จะมีเพียงแอปที่ลงทะเบียนเท่านั้นที่เข้าถึงทรัพยากรแบ็กเอนด์ของผลิตภัณฑ์ได้
ไม่บังคับ: ในการตั้งค่าการลงทะเบียนแอป ให้ตั้งค่า TTL (Time To Live) ที่กําหนดเองสําหรับโทเค็น App Check ที่ผู้ให้บริการออกให้ คุณตั้งค่า TTL เป็นค่าใดก็ได้ระหว่าง 30 นาทีถึง 7 วัน เมื่อเปลี่ยนค่านี้ ให้คำนึงถึงข้อเสียต่อไปนี้
- ความปลอดภัย: TTL ที่สั้นลงจะเพิ่มความปลอดภัย เนื่องจากจะลดระยะเวลาที่ผู้โจมตีจะใช้ประโยชน์จากโทเค็นที่รั่วไหลหรือถูกขัดขวางได้
- ประสิทธิภาพ: TTL ที่สั้นลงหมายความว่าแอปจะดำเนินการรับรองบ่อยขึ้น เนื่องจากกระบวนการรับรองแอปจะเพิ่มเวลาในการตอบสนองของคำขอเครือข่ายทุกครั้งที่ดำเนินการ TTL ที่สั้นอาจส่งผลต่อประสิทธิภาพของแอป
- โควต้าและค่าใช้จ่าย: TTL ที่สั้นลงและการรับรองอีกครั้งบ่อยๆ จะลดโควต้าของคุณเร็วขึ้น และสำหรับบริการแบบชำระเงิน อาจทำให้ค่าใช้จ่ายสูงขึ้น ดูโควต้าและขีดจํากัด
TTL เริ่มต้นที่ 1 ชั่วโมง นั้นเหมาะสมสําหรับแอปส่วนใหญ่ โปรดทราบว่าไลบรารี App Check จะรีเฟรชโทเค็นทุกๆ ครึ่งหนึ่งของระยะเวลา TTL
2. เพิ่มคลัง App Check ลงในแอป
เพิ่ม Dependency ของ App Check ลงใน
Podfile
ของโปรเจ็กต์ โดยทำดังนี้pod 'FirebaseAppCheck'
หรือจะใช้ Swift Package Manager แทนก็ได้
ตรวจสอบว่าคุณใช้ไลบรารีไคลเอ็นต์ของบริการ Firebase เวอร์ชันล่าสุดด้วย
เรียกใช้
pod install
และเปิดไฟล์.xcworkspace
ที่สร้างขึ้น
ขั้นตอนถัดไป
เมื่อติดตั้งไลบรารี App Check ในแอปแล้ว ให้เริ่มเผยแพร่แอปที่อัปเดตแล้วให้แก่ผู้ใช้
แอปไคลเอ็นต์ที่อัปเดตแล้วจะเริ่มส่งโทเค็น App Check พร้อมกับคำขอทั้งหมดที่ส่งไปยัง Firebase แต่ผลิตภัณฑ์ Firebase จะไม่กำหนดให้โทเค็นต้องถูกต้องจนกว่าคุณจะเปิดใช้การบังคับใช้ในส่วน App Check ของคอนโซล Firebase
ตรวจสอบเมตริกและเปิดใช้การบังคับใช้
อย่างไรก็ตาม ก่อนที่จะเปิดใช้การบังคับใช้ คุณควรตรวจสอบว่าการดำเนินการดังกล่าวจะไม่รบกวนผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปที่น่าสงสัย คุณอาจต้องเปิดใช้การบังคับใช้เร็วขึ้น
คุณดูเมตริก App Check ของบริการที่ใช้อยู่เพื่อช่วยในการตัดสินใจนี้ได้ ดังนี้
- ตรวจสอบเมตริกคําขอ App Check สําหรับ Data Connect, Vertex AI in Firebase, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API และ Places API (ใหม่)
- ตรวจสอบเมตริกคำขอ App Check สำหรับ Cloud Functions
เปิดใช้การบังคับใช้ App Check
เมื่อเข้าใจว่า App Check จะส่งผลต่อผู้ใช้อย่างไรและพร้อมที่จะดำเนินการต่อแล้ว ให้เปิดใช้การบังคับใช้ App Check โดยทำดังนี้
- เปิดใช้การบังคับใช้ App Check สำหรับ Data Connect, Vertex AI in Firebase, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API และ Places API (ใหม่)
- เปิดใช้การบังคับใช้ App Check สำหรับ Cloud Functions
ใช้ App Check ในสภาพแวดล้อมการแก้ไขข้อบกพร่อง
หากหลังจากลงทะเบียนแอปสำหรับ App Check แล้ว คุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่ปกติแล้ว App Check จะไม่จัดประเภทว่าถูกต้อง เช่น เครื่องจำลองระหว่างการพัฒนา หรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสามารถสร้างบิลด์แก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่องของ App Check แทนผู้ให้บริการตรวจสอบสิทธิ์จริง
โปรดดูหัวข้อใช้ App Check กับผู้ให้บริการแก้ไขข้อบกพร่องในแพลตฟอร์ม Apple