คุณสามารถใช้ App Check เพื่อปกป้องทรัพยากรแบ็กเอนด์ที่กำหนดเองซึ่งไม่ใช่ของ Google สำหรับ แอป เช่น แบ็กเอนด์ที่โฮสต์ด้วยตนเอง โดยจะต้องดำเนินการทั้ง 2 อย่างต่อไปนี้
- แก้ไขไคลเอ็นต์แอปเพื่อส่งโทเค็น App Check พร้อมกับคำขอแต่ละรายการไปยังแบ็กเอนด์ตามที่อธิบายไว้ในหน้านี้
- แก้ไขแบ็กเอนด์ให้กำหนดให้ต้องมีโทเค็น App Check ที่ถูกต้องกับทุกคำขอ ตามที่อธิบายไว้ในยืนยันโทเค็น App Check จากแบ็กเอนด์ที่กำหนดเอง
ก่อนเริ่มต้น
เพิ่ม App Check ลงในแอปโดยใช้ผู้ให้บริการเริ่มต้น
ส่งโทเค็น App Check พร้อมกับคำขอแบ็กเอนด์
หากต้องการให้คำขอแบ็กเอนด์มีโทเค็น App Check ที่ถูกต้องและไม่หมดอายุ ให้ใส่การเรียก AppCheck::GetAppCheckToken() ไว้ก่อนคำขอแต่ละรายการ ไลบรารี App Check จะรีเฟรชโทเค็นหากจำเป็น
เมื่อมีโทเค็นที่ถูกต้องแล้ว ให้ส่งโทเค็นดังกล่าวพร้อมกับคำขอไปยังแบ็กเอนด์ คุณมีอิสระในการเลือกวิธีดำเนินการ แต่ อย่าส่ง โทเค็น App Check เป็นส่วนหนึ่งของ URL รวมถึงในพารามิเตอร์การค้นหา เนื่องจากวิธีนี้ จะทำให้โทเค็นเสี่ยงต่อการรั่วไหลและการดักจับโดยไม่ตั้งใจ วิธีที่แนะนำคือการส่งโทเค็นในส่วนหัว HTTP ที่กำหนดเอง
ตัวอย่าง
void CallApiExample() {
firebase_app_check::AppCheck* app_check = firebase::app_check::AppCheck::GetInstance();
Future<std::string> app_check_future = app_check->GetAppCheckToken(false);
app_check_future.OnCompletion([&](const Future<std::string>& future_token) {
if (future_token.result()) {
// Got a valid App Check token. Include it in your own http calls.
}
}
}