หน้านี้จะแสดงวิธีเปิดใช้ App Check ในแอป C++ โดยใช้ ผู้ให้บริการ App Check ที่กำหนดเอง ของ คุณ เมื่อเปิดใช้ App Check คุณจะช่วยให้มั่นใจได้ว่ามีเพียงแอปของคุณเท่านั้นที่จะเข้าถึงทรัพยากร Firebase ของโปรเจ็กต์ได้
หากต้องการใช้ App Check กับผู้ให้บริการเริ่มต้น โปรดดู หัวข้อเปิดใช้ App Check กับผู้ให้บริการเริ่มต้นด้วย C++
ก่อนเริ่มต้น
เพิ่ม Firebase ลงในโปรเจ็กต์ C++ หากยังไม่ได้ ดำเนินการ
ใช้ตรรกะฝั่งเซิร์ฟเวอร์ของผู้ให้บริการ App Check ที่กำหนดเอง
1. เพิ่มไลบรารี App Check ลงในแอป
รวมไลบรารี App Check ไว้ในชุดการขึ้นต่อกัน โดยทำตาม วิธีการตั้งค่าสำหรับ App Check
2. ใช้อินเทอร์เฟซ App Check
ขั้นแรก คุณต้องสร้างคลาสที่ใช้อินเทอร์เฟซ AppCheckProvider และ
AppCheckProviderFactory
คลาส AppCheckProvider ต้องมีเมธอด GetToken() ซึ่งรวบรวมข้อมูลใดก็ตามที่ผู้ให้บริการ App Check ที่กำหนดเองต้องการเป็นหลักฐานการตรวจสอบสิทธิ์ และส่งข้อมูลดังกล่าวไปยังบริการรับโทเค็นเพื่อแลกกับโทเค็น App Check App Check SDK จะจัดการการแคชโทเค็น ดังนั้นให้รับ
โทเค็นใหม่เสมอในการใช้งาน GetToken()
class YourCustomAppCheckProvider : public AppCheckProvider {
void GetToken(std::function<void(AppCheckToken, int, const std::string&)>
completion_callback) {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
// Create AppCheckToken object.
AppCheckToken appCheckToken;
appCheckToken.token = token;
appCheckToken.expire_time_millis = expireTime;
completion_callback(appCheckToken, 0, "");
// Or, if needing to return an error
//completion_callback({}, error_code, "Error description");
}
};
นอกจากนี้ ให้ใช้คลาส AppCheckProviderFactory ที่สร้างอินสแตนซ์ของการใช้งาน
AppCheckProvider ดังนี้
class YourCustomAppCheckProviderFactory : public AppCheckProviderFactory {
AppCheckProvider* CreateProvider(App* app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
3. เริ่มต้น App Check
เพิ่มโค้ดการเริ่มต้นต่อไปนี้ลงในแอปเพื่อให้โค้ดทำงานก่อนที่คุณจะใช้ Firebase SDK อื่นๆ
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
YourCustomAppCheckProviderFactory::GetInstance());
ขั้นตอนถัดไป
เมื่อติดตั้งไลบรารี App Check ในแอปแล้ว ให้เริ่มเผยแพร่แอปที่ อัปเดตแล้วไปยังผู้ใช้
แอปไคลเอ็นต์ที่อัปเดตแล้วจะเริ่มส่ง App Check โทเค็นไปพร้อมกับทุก คำขอที่ส่งไปยัง Firebase แต่ผลิตภัณฑ์ Firebase จะไม่กำหนดให้โทเค็น ต้องถูกต้องจนกว่าคุณจะเปิดใช้การบังคับใช้ในส่วน App Check ของ คอนโซล Firebase
ตรวจสอบเมตริกและเปิดใช้การบังคับใช้
อย่างไรก็ตาม ก่อนที่จะเปิดใช้การบังคับใช้ คุณควรตรวจสอบว่าการดำเนินการดังกล่าวจะไม่ส่งผลกระทบต่อผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปที่น่าสงสัย คุณอาจต้องการเปิดใช้การบังคับใช้เร็วขึ้น
คุณสามารถดูเมตริก App Check สำหรับ บริการที่คุณใช้เพื่อช่วยในการตัดสินใจได้ดังนี้
- ตรวจสอบเมตริกคำขอApp Checkสำหรับ Firebase AI Logic, Data Connect, 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 การบังคับใช้ สำหรับ Firebase AI Logic, Data Connect, 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 กับผู้ให้บริการการแก้ไขข้อบกพร่องด้วย C++