รายการตรวจสอบด้านความปลอดภัยสำหรับการใช้ Firebase AI Logic

เมื่อคุณเรียกใช้ Gemini API โดยตรงจากแอปบนอุปกรณ์เคลื่อนที่และเว็บแอป การปกป้องโครงสร้างพื้นฐานแบ็กเอนด์ โควต้า และพรอมต์ที่เป็นกรรมสิทธิ์ของคุณต้องใช้แนวทางการป้องกันหลายชั้น โปรดอ่านเช็กลิสต์นี้เพื่อใช้แนวทางปฏิบัติแนะนำด้านความปลอดภัยที่แนะนำสำหรับ Firebase AI Logic

การยืนยันแอป อุปกรณ์ และผู้ใช้

ยืนยันว่าคำขอที่เข้ามามาจากอินสแตนซ์ที่ถูกต้องตามกฎหมายและไม่มีการปลอมแปลงของแอปที่ทำงานบนอุปกรณ์ของแท้ รวมถึงมาจากผู้ใช้จริง

บังคับใช้ Firebase App Check

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

App Check รองรับผู้ให้บริการเอกสารรับรองสำหรับแพลตฟอร์ม Apple (DeviceCheck, App Attest หรือ reCAPTCHA Enterprise), Android (Play Integrity หรือ reCAPTCHA Enterprise) และเว็บ (reCAPTCHA Enterprise) นอกจากนี้ยังรองรับผู้ให้บริการทั้งหมดเหล่านี้สำหรับแอป Flutter และ Unity ด้วย

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

เปิดใช้การป้องกันการเล่นซ้ำด้วยโทเค็นที่จำกัดการใช้

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

ตั้งค่าข้อจำกัดสำหรับคีย์ Firebase API

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

  • ตั้งค่า "ข้อจำกัดของแอปพลิเคชัน" ในคอนโซล Google Cloud เพื่อจำกัดการใช้คีย์เฉพาะคำขอจากรหัสชุด (Apple), ชื่อแพ็กเกจและลายนิ้วมือ SHA-1 (Android) หรือ URL ที่มา (เว็บ) ที่เฉพาะเจาะจงของแอป

  • ตรวจสอบรายการที่อนุญาต "ข้อจำกัด API" ของแต่ละคีย์ ดังนี้

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

จำกัดคำขอให้เฉพาะผู้ใช้ที่ตรวจสอบสิทธิ์แล้วเท่านั้น

พิจารณาบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วเพื่อให้คำขอทั้งหมดผ่าน Firebase AI Logic ต้องมีข้อมูลเข้าสู่ระบบที่ถูกต้องจาก Firebase Authentication หากคำขอมาจากผู้ใช้ปลายทางที่ไม่ได้รับการตรวจสอบสิทธิ์ คำขอจะถูกปฏิเสธพร้อมข้อผิดพลาด 401: unauthenticated

การป้องกันพรอมต์และการเพิ่มความปลอดภัยของคำขอ

ป้องกันไม่ให้การดีคอมไพล์ไคลเอ็นต์เปิดเผยการออกแบบพรอมต์ และล็อกแบ็กเอนด์เพื่อไม่ให้ผู้ใช้ที่เป็นอันตรายเรียกใช้พรอมต์ที่กำหนดเองได้

ใช้เทมเพลตพรอมต์ของเซิร์ฟเวอร์

ใช้ เทมเพลตพรอมต์เซิร์ฟเวอร์ เพื่อเก็บพรอมต์, คำสั่งของระบบ และการกำหนดค่าโมเดลไว้อย่างปลอดภัยใน ระบบคลาวด์ แทนที่จะฮาร์ดโค้ดไว้ในโค้ดของแอปไคลเอ็นต์ซึ่งสามารถ ดึงข้อมูลออกมาได้โดยใช้การดีคอมไพล์ไบนารี

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

ตรวจสอบและทำความสะอาดตัวแปรเทมเพลตที่ไคลเอ็นต์ระบุ

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

  • ตรวจสอบและล้างข้อมูลที่ผู้ใช้ป้อนทั้งหมดในฝั่งไคลเอ็นต์ก่อนส่งตัวแปรไปยังเทมเพลต (เช่น การบังคับใช้จำนวนอักขระสูงสุดและรูปแบบที่คาดไว้)
  • ใส่คำสั่งของระบบที่ชัดเจนในเทมเพลตซึ่งกำหนดเกณฑ์ป้องกันสำหรับการประมวลผลข้อมูลที่ผู้ใช้ป้อน

บังคับใช้โหมดเทมเพลตเท่านั้น

พิจารณาบังคับใช้โหมดเทมเพลตเท่านั้นเมื่อฟีเจอร์ทั้งหมดของแอปใช้เทมเพลตพรอมต์เซิร์ฟเวอร์ เมื่อบังคับใช้ Firebase AI Logic จะบล็อกคำขอโดยตรงทั้งหมดที่ไม่ได้ใช้เทมเพลตไปยัง Gemini API (403: unauthorized) เพื่อป้องกันไม่ให้ผู้ไม่ประสงค์ดีส่ง พรอมต์ที่กำหนดเองหรือใช้โควต้าของคุณในทางที่ผิด

การตรวจสอบ ขีดจำกัด และการเรียกเก็บเงิน

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

ตั้งค่าการตรวจสอบ AI ในคอนโซล Firebase

ตั้งค่า การตรวจสอบ AI ในคอนโซล Firebase เพื่อให้เห็นเมตริกที่สำคัญ เช่น จำนวนคำขอ เวลาในการตอบสนอง การใช้โทเค็น และอัตราข้อผิดพลาด (รวมถึงการตรวจสอบสิทธิ์ 401 ไม่สำเร็จและบล็อกเฉพาะเทมเพลต 403) นอกจากนี้ คุณยังตรวจสอบการติดตามแต่ละรายการในคอนโซล Google Cloud ได้ด้วย

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

ปกป้องโปรเจ็กต์จากการใช้งานที่เพิ่มขึ้นอย่างรวดเร็วโดยไม่คาดคิดและการโจมตีแบบ Denial of Wallet

หลีกเลี่ยงการเรียกเก็บเงินที่ไม่คาดคิดด้วยการแจ้งเตือนและขีดจำกัดการใช้จ่าย

หากโปรเจ็กต์ Firebase ใช้แพ็กเกจราคา Blaze แบบจ่ายเมื่อใช้ ให้ทำดังนี้

ขั้นตอนถัดไป