หน้านี้จะแสดงวิธีเปิดใช้ App Check ในแอป C++ โดยใช้ผู้ให้บริการเร��่มต้น ได้แก่ Play Integrity ใน Android และ Device Check หรือ App Attest ในแพลตฟอร์ม Apple การเปิดใช้ App Check ช่วยให้มั่นใจได้ว่า มีเพียงแอปของคุณเท่านั้นที่เข้าถึงทรัพยากร Firebase ของโปรเจ็กต์ได้ ดูภาพรวมของฟีเจอร์นี้
1. สร้างโปรเจ็กต์ Firebase
เพิ่ม Firebase ลงในโปรเจ็กต์ C++ หากยังไม่ได้ดำเนินการ
ลงทะเบียนแอปเพื่อใช้ App Check กับผู้ให้บริการ Play Integrity, Device Check หรือ App Attest ในส่วนการตั้งค่าโปรเจ็กต�� > App Check ของคอนโซล Firebase
ปกติแล้วคุณจะต้องลงทะเบียนแอปทั้งหมดของโครงการ เพราะเมื่อคุณ เปิดใช้การบังคับใช้สำหรับผลิตภัณฑ์ Firebase เฉพาะแอปที่ลงทะเบียนเท่านั้นที่ทำได้ เพื่อเข้าถึงทรัพยากรแบ็กเอนด์ของผลิตภัณฑ์
หากต้องการทราบขั้นตอนการลงทะเบียนกับผู้ให้บริการแต่ละรายโดยละเอียด โปรดดูที่ ในเอกสารประกอบเฉพาะสำหรับ Android และ iOS
ไม่บังคับ: ในการตั้งค่าการลงทะเบียนแอป ให้ตั้งค่า TTL (Time To Live) ที่กําหนดเองสําหรับโทเค็น App Check ที่ผู้ให้บริการออกให้ คุณจะตั้งค่า TTL ได้ เป็นค่าใดก็ได้ระหว่าง 30 นาทีถึง 7 วัน เมื่อเปลี่ยนค่านี้ ทราบถึงข้อดีข้อเสียต่อไปนี้
- ความปลอดภัย: TTL ที่สั้นลงจะเพิ่มความปลอดภัย เนื่องจากจะลดระยะเวลาที่ผู้โจมตีจะใช้ประโยชน์จากโทเค็นที่รั่วไหลหรือถูกขัดขวางได้
- ประสิทธิภาพ: TTL ที่สั้นลงหมายความว่าแอปจะดำเนินการรับรองบ่อยขึ้น เนื่องจากกระบวนการรับรองแอปเพิ่มเวลาในการตอบสนองให้กับเครือข่าย ทุกครั้งที่มีการดำเนินการ TTL ขนาดสั้นอาจส่งผลต่อประสิทธิภาพ ของแอปของคุณ
- โควต้าและค่าใช้จ่าย: TTL ที่สั้นลงและการรับรองอีกครั้งบ่อยๆ จะลดโควต้าของคุณเร็วข��้น และสำหรับบริการแบบชำระเงิน อาจทำให้ค่าใช้จ่ายสูงขึ้น ดูโควต้าและขีดจํากัด
TTL เริ่มต้น เหมาะสมสำหรับแอปส่วนใหญ่ โปรดทราบว่าไลบรารี App Check จะรีเฟรชโทเค็นทุกๆ ครึ่งหนึ่งของระยะเวลา TTL
2. เพิ่มไลบรารี App Check ลงในแอป
รวมไลบรารี App Check ไว้ในชุดของไลบรารีที่ใช้ร่วมกัน โดยทําตามวิธีการตั้งค่าสําหรับ App Check
3. เริ่มต้น App Check
เพิ่มโค้ดการเริ่มต้นต่อไปนี้ลงในแอปเพื่อให้แอปทำงานก่อนที่คุณจะใช้บริการ Firebase รวมถึงสร้างแอป Firebase
Android
รวมไฟล์ส่วนหัวสําหรับ
firebase::app_check
#include "firebase/app_check.h"
เริ่มต้นไลบรารี App Check กับผู้ให้บริการ Play Integrity โดยทำดังนี้
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::PlayIntegrityProviderFactory::GetInstance());
iOS ขึ้นไป
รวมไฟล์ส่วนหัวสำหรับ
firebase::app_check
:#include "firebase/app_check.h"
เริ่มต้นไลบรารี App Check ด้วย Device Check หรือ App Attest เป็นผู้ให้บริการคลาวด์
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::DeviceCheckProviderFactory::GetInstance());
ขั้นตอนถัดไป
เมื่อติดตั้งไลบรารี App Check ในแอปแล้ว ให้เริ่มเผยแพร่แอปที่อัปเดตแล้วให้แก่ผู้ใช้
แอปไคลเอ็นต์ที่อัปเดตแล้วจะเริ่มส่งโทเค็น App Check พร้อมกับ ส่งคำขอไปยัง Firebase แต่ผลิตภัณฑ์ Firebase ไม่จำเป็นต้องใช้โทเค็น จะยังมีผลจนกว่าคุณจะเปิดใช้การบังคับใช้ในส่วน App Check ของ คอนโซล Firebase
ตรวจสอบเมตริกและเปิดใช้การบังคับใช้
แต่ก่อนเปิดใช้การบังคับใช้ คุณควรตรวจสอบว่าการดำเนินการด��งกล่าวจะไม่ กับผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปที่น่าส������ย คุณอาจต้องเปิดใช้การบังคับใช้เร็วขึ้น
โปรดดูเมตริก App Check สำหรับ บริการที่คุณใช้:
- ตรวจสอบเมตริกคำขอ App Check เพื่อหา Realtime Database, Cloud Firestore และ Cloud Storage
- ตรวจสอบเมตริกคำขอ App Check สำหรับ Cloud Functions
เปิดใช้การบังคับใช้ App Check
เมื่อเข้าใจว่า App Check จะส่งผลต่อผู้ใช้อย่างไรและพร้อมจะ การดำเนินการต่อก็เปิดใช้การบังคับใช้ App Check ได้โดยทำดังนี้
- เปิดใช้การบังคับใช้ App Check สำหรับ Realtime Database, Cloud Firestore และ Cloud Storage
- เปิดใช้การบังคับใช้ App Check สำหรับ Cloud Functions
ใช้ App Check ในสภาพแวดล้อมการแก้ไขข้อบกพร่อง
หากหลังจากลงทะเบียนแอปสำหรับ App Check แล้ว คุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่ปกติแล้ว App Check จะไม่จัดประเภทว่าถูกต้อง เช่น ในเดสก์ท็อป โปรแกรมจำลองระหว่างการพัฒนา หรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสามารถสร้างบิลด์แก้ไขข้อบกพร่องของแอปที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่องของ App Check แทนผู้ให้บริการยืนยันตัวตนจริง
โปรดดูใช้ App Check กับผู้ให้บริการแก้ไขข้อบกพร่องในแอป C++