หน้านี้จะแสดงวิธีเปิดใช้งาน 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. เริ่มต้นการตรวจสอบแอป
เพิ่มโค้ดเริ่มต้นต่อไปนี้ลงในแอปของคุณเพื่อให้แอปทำงานได้ก่อนที่คุณจะใช้ Firebase SDK อื่นๆ:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
YourCustomAppCheckProviderFactory::GetInstance());
ขั้นตอนถัดไป
เมื่อติดตั้งไลบรารี App Check ในแอปของคุณแล้ว ให้เริ่มเผยแพร่แอปที่อัปเดตให้กับผู้ใช้ของคุณ
แอปไคลเอนต์ที่อัปเดตจะเริ่มส่งโทเค็น App Check ไปพร้อมกับทุกคำขอที่ส่งไปยัง Firebase แต่ผลิตภัณฑ์ Firebase จะไม่ต้องการให้โทเค็นนั้นถูกต้องจนกว่าคุณจะเปิดใช้งานการบังคับใช้ในส่วน App Check ของคอนโซล Firebase
ตรวจสอบตัวชี้วัดและเปิดใช้งานการบังคับใช้
อย่างไรก็ตาม ก่อนที่คุณจะเปิดใช้งานการบังคับใช้ คุณควรตรวจสอบให้แน่ใจว่าการดำเนินการดังกล่าวจะไม่รบกวนผู้ใช้ที่ถูกต้องตามกฎหมายที่มีอยู่ของคุณ ในทางกลับกัน หากคุณเห็นการใช้ทรัพยากรแอปของคุณอย่างน่าสงสัย คุณอาจต้องการเปิดใช้งานการบังคับใช้เร็วกว่านี้
เพื่อช่วยในการตัดสินใจนี้ คุณสามารถดูเมตริก App Check สำหรับบริการที่คุณใช้ได้ ดังนี้
- ตรวจสอบตัววัดคำขอ App Check สำหรับฐานข้อมูลเรียลไทม์, Cloud Firestore, Cloud Storage และการตรวจสอบสิทธิ์ (เบต้า)
- ตรวจสอบเมตริกคำขอ App Check สำหรับฟังก์ชันคลาวด์
เปิดใช้การบังคับใช้การตรวจสอบแอป
เมื่อคุณเข้าใจว่า App Check จะส่งผลต่อผู้ใช้อย่างไร และพร้อมที่จะดำเนินการต่อ คุณจะเปิดใช้การบังคับใช้ App Check ได้ดังนี้
- เปิดใช้การบังคับใช้การตรวจสอบแอป สำหรับฐานข้อมูลเรียลไทม์, Cloud Firestore, Cloud Storage และการตรวจสอบสิทธิ์ (เบต้า)
- เปิดใช้การบังคับใช้การตรวจสอบแอปสำหรับฟังก์ชันคลาวด์
ใช้ App Check ในสภาพแวดล้อมการแก้ไขข้อบกพร่อง
หลังจากที่คุณลงทะเบียนแอปสำหรับ App Check แล้ว หากคุณต้องการเรียกใช้แอปในสภาพแวดล้อมที่โดยปกติแล้ว App Check จะไม่จัดประเภทว่าใช้งานได้ เช่น โปรแกรมจำลองในระหว่างการพัฒนา หรือจากสภาพแวดล้อมการผสานรวมอย่างต่อเนื่อง (CI) คุณสามารถ สร้างบิลด์การแก้ไขข้อบกพร่องของแอปของคุณที่ใช้ผู้ให้บริการแก้ไขข้อบกพร่อง App Check แทนผู้ให้บริการรับรองจริง
ดู ใช้ App Check กับผู้ให้บริการดีบักด้วย C++