ปกป้องทรัพยากรที่ไม่ใช่ Firebase ด้วย App Check

คุณสามารถปกป้องทรัพยากรที่ไม่ใช่ Firebase ของแอป เช่น แบ็กเอนด์ที่โฮสต์เองได้ด้วยการตรวจสอบแอป ในการทำเช่นนั้น คุณจะต้องทำทั้งสองสิ่งต่อไปนี้:

  • แก้ไขไคลเอ็นต์แอปของคุณเพื่อส่งโทเค็น App Check พร้อมกับคำขอแต่ละรายการไปยังแบ็กเอนด์ของคุณ ตามที่อธิบายไว้ในหน้านี้
  • แก้ไขแบ็คเอนด์ของคุณเพื่อต้องการโทเค็น App Check ที่ถูกต้องสำหรับทุกคำขอ ตามที่อธิบายไว้ใน ตรวจสอบโทเค็น App Check จากแบ็คเอนด์ที่กำหนดเอง

ก่อนที่คุณจะเริ่มต้น

เพิ่ม App Check ในแอปของคุณ โดยใช้ ผู้ให้บริการเริ่มต้น

ส่งโทเค็น App Check พร้อมคำขอแบ็กเอนด์

เพื่อให้แน่ใจว่าคำขอแบ็กเอนด์ของคุณมีโทเค็น App Check ที่ถูกต้องและยังไม่หมดอายุ ให้เรียก FirebaseAppCheck.GetAppCheckTokenAsync() ก่อนแต่ละคำขอ ไลบรารี App Check จะรีเฟรชโทเค็นหากจำเป็น

เมื่อคุณมีโทเค็นที่ถูกต้องแล้ว ให้ส่งไปพร้อมกับคำขอไปยังแบ็กเอนด์ของคุณ ความเฉพาะเจาะจงของวิธีการดำเนินการนี้ขึ้นอยู่กับคุณ แต่ อย่าส่งโทเค็น App Check เป็นส่วนหนึ่งของ URL รวมถึงในพารามิเตอร์การค้นหา เนื่องจากจะทำให้โทเค็นดังกล่าวเสี่ยงต่อการรั่วไหลและการสกัดกั้นโดยไม่ตั้งใจ วิธีการที่แนะนำคือการส่งโทเค็นในส่วนหัว HTTP ที่กำหนดเอง

ตัวอย่างเช่น:

void CallApiExample() {
    FirebaseAppCheck.DefaultInstance.GetAppCheckToken(false).
      ContinueWithOnMainThread(task => {
        if (!task.IsFaulted) {
            // Got a valid App Check token. Include it in your own http calls.
        }
    });
}