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

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

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

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

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

บังคับใช้ Firebase App Check เพื่อช่วยปกป้อง Gemini API จากการละเมิดเมื่อมีการเรียกใช้ 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 ให้พิจารณา บังคับใช้ การป้องกันการเล่นซ้ำ เพื่อให้โทเค็น App Check เป็น แบบใช้ได้ครั้งเดียวเท่านั้น ตัวเลือกนี้จะช่วยเพิ่มการปกป้องนอกเหนือจากการปกป้องพื้นฐาน และช่วยให้คุณกำหนดระดับการปกป้องที่เหมาะสมสำหรับแอปและกรณีการใช้งานของคุณได้

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

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

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

  • ตรวจสอบรายการที่อนุญาต "ข้อจำกัด 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 แบบจ่ายเมื่อใช้

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