Firebase App Check

App Check ช่วยปกป้องแบ็กเอนด์ของแอปจากการใช้งานในทางที่ผิดด้วยการป้องกันไม่ให้ ไคลเอ็นต์ที่ไม่ได้รับอนุญาตเข้าถึงทรัพยากรแบ็กเอนด์ โดยจะทำงานร่วมกับ ทั้งบริการของ Google (รวมถึงบริการของ Firebase และ Google Cloud บริการ) และ แบ็กเอนด์ที่กำหนดเองของคุณเองเพื่อรักษาทรัพยากรให้ปลอดภัย

เมื่อใช้ App Check อุปกรณ์ที่เรียกใช้แอปของคุณจะใช้ผู้ให้บริการการรับรองแอปหรืออุปกรณ์ เพื่อรับรองสิ่งใดสิ่งหนึ่งหรือทั้งสองอย่างต่อไปนี้

  • คำขอมาจากแอปของแท้
  • คำขอมาจากอุปกรณ์ของแท้ที่ไม่มีการดัดแปลง

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

App Check มีการรองรับในตัวสำหรับการใช้บริการต่อไปนี้เป็น ผู้ให้บริการการรับรอง:

หากบริการเหล่านี้ไม่เพียงพอต่อความต้องการของคุณ คุณยังสามารถใช้บริการของคุณเองที่ใช้ผู้ให้บริการการรับรองของบุคคลที่สามหรือเทคนิคการรับรองของคุณเองก็ได้

App Check ทำงานร่วมกับบริการของ Google ต่อไปนี้

บริการของ Firebase และ Google Cloud ที่รองรับ
Firebase Authentication (เวอร์ชันเบต้า)
Firebase SQL Connect
Cloud Firestore
Firebase Realtime Database
Cloud Storage for Firebase
Cloud Functions for Firebase (เฉพาะฟังก์ชันที่เรียกใช้ได้)
Firebase AI Logic
บริการของ Google Maps Platform ที่รองรับ
Maps JavaScript API
Places API (ใหม่)
Navigation SDK (Android และ iOS)
บริการอื่นๆ ของ Google ที่รองรับ
Google Identity สำหรับ iOS

นอกจากนี้ คุณยังใช้ App Check เพื่อปกป้องทรัพยากรแบ็กเอนด์ที่กำหนดเองที่ไม่ใช่ของ Google ได้ด้วย เช่น แบ็กเอนด์ที่โฮสต์เอง

ดูวิธีเริ่มต้นใช้งาน

วิธีการทำงาน

เมื่อคุณเปิดใช้ App Check สำหรับบริการและรวม Client SDK ไว้ในแอป สิ่งต่อไปนี้จะเกิดขึ้นเป็นระยะ

  1. แอปของคุณจะโต้ตอบกับผู้ให้บริการที่คุณเลือกเพื่อรับการรับรองความถูกต้องของแอปหรืออุปกรณ์ (หรือทั้งสองอย่าง ขึ้นอยู่กับผู้ให้บริการ)
  2. ระบบจะส่งการรับรองไปยังเซ0/} เซิร์ฟเวอร์ ซึ่งจะตรวจสอบความ ถูกต้องของการรับรองโดยใช้พารามิเตอร์ที่ลงทะเบียนกับแอป และ ส่งโทเค็น App Check ที่มีเวลาหมดอายุกลับไปยังแอปApp Check โทเค็นนี้อาจเก็บข้อมูลบางอย่างเกี่ยวกับเนื้อหาการรับรองที่ตรวจสอบแล้ว
  3. Client SDK ของ App Check จะแคชโทเค็นในแอปของคุณเพื่อให้พร้อมส่ง ไปพร้อมกับคำขอที่แอปส่งไปยังบริการที่ได้รับการปกป้อง

บริการที่ได้รับการปกป้องโดย App Check จะยอมรับเฉพาะคำขอที่มาพร้อมกับโทเค็น App Check ปัจจุบันที่ถูกต้อง

App Check มีความปลอดภัยมากน้อยเพียงใด

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

App Check และ Firebase Authentication เป็นส่วนประกอบที่เสริมกันและกันในเรื่องความปลอดภัยของแอป Firebase Authentication ให้การตรวจสอบสิทธิ์ผู้ใช้ ซึ่งช่วยปกป้องผู้ใช้ของคุณ ในขณะที่ App Check ให้การรับรองความถูกต้องของแอปหรืออุปกรณ์ ซึ่งช่วยปกป้องคุณในฐานะนักพัฒนาแอป App Check ช่วยป้องกันการเข้าถึงทรัพยากรแบ็กเอนด์ของ Google และแบ็กเอนด์ที่กำหนดเองโดยกำหนดให้การเรียก API ต้องมีโทเค็น App Check ที่ถูกต้อง แนวคิดทั้งสองนี้ทำงานร่วมกันเพื่อช่วยรักษาความปลอดภัยของแอป

โควต้าและขีดจำกัด

การใช้ App Check จะขึ้นอยู่กับโควต้าและขีดจำกัดของผู้ให้บริการการรับรอง ที่คุณใช้

  • การเข้าถึง DeviceCheck และ App Attest จะขึ้นอยู่กับโควต้าหรือข้อจำกัดที่ Apple กำหนด

  • Play Integrity มีโควต้าการเรียกใช้ 10,000 ครั้งต่อวันสำหรับระดับการใช้งาน API มาตรฐาน ดูข้อมูลเกี่ยวกับการเพิ่มระดับการใช้งานได้ที่ เอกสารประกอบของ Play Integrity

  • reCAPTCHA Enterprise ไม่มีค่าใช้จ่ายสำหรับการประเมิน 10,000 ครั้งในแต่ละเดือน และมีค่าใช้จ่ายหากใช้เกินจำนวนดังกล่าว ดูราคา reCAPTCHA

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

เริ่มต้นใช้งาน

หากพร้อมที่จะเริ่มแล้ว

แพลตฟอร์ม Apple

DeviceCheck App Attest reCAPTCHA Enterprise

Android

Play Integrity reCAPTCHA Enterprise

เว็บ

reCAPTCHA Enterprise

Flutter

ผู้ให้บริการเริ่มต้น reCAPTCHA Enterprise

Unity

ผู้ให้บริการเริ่มต้น

C++

ผู้ให้บริการเริ่มต้น

ดูวิธีใช้ผู้ให้บริการ App Check ที่กำหนดเอง

ผู้ให้บริการที่กำหนดเอง

ดูวิธีใช้ App Check เพื่อปกป้องทรัพยากรแบ็กเอนด์ที่กำหนดเอง

เลือกแพลตฟอร์ม

iOS+ Android เว็บ Flutter Unity C++

ดูวิธีใช้ App Check สำหรับการพัฒนาภายในเครื่องและสภาพแวดล้อม CI/CD

เลือกแพลตฟอร์ม

iOS+ Android เว็บ Flutter Unity C++