คุณสามารถบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว สำหรับโปรเจ็กต์ Firebase ได้ เมื่อ บังคับใช้แล้ว คำขอทั้งหมดที่ส่งไปยัง Gemini API ผ่าน Firebase AI Logic จะต้องมาจาก ผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ของแอป โดยเฉพาะอย่างยิ่ง ผู้ใช้ปลายทางของแอปจะต้อง ได้รับการตรวจสอบสิทธิ์โดยใช้ Firebase Authentication ก่อนที่จะส่ง คำขอไปยัง Firebase AI Logic จากแอป หากผู้ใช้ปลายทาง ไม่ได้รับการตรวจสอบสิทธิ์ ระบบจะบล็อกคำขอ
เมื่อระบบบล็อกคำขอ การตอบกลับจะเป็นข้อผิดพลาด 401: unauthenticated
ข้อควรพิจารณาที่สำคัญ
โปรดทราบข้อควรพิจารณาที่สำคัญต่อไปนี้สำหรับโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
สิ่งที่จะเกิดขึ้นเมื่อมีการบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
เมื่อมีการบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว โปรดทราบสิ่งต่อไปนี้
การตั้งค่านี้เป็นการตั้งค่าทั่วทั้งโปรเจ็กต์ สำหรับ Firebase AI Logic
- การตั้งค่านี้มีผลกับแอปทั้งหมดที่ลงทะเบียนในโปรเจ็กต์
- การตั้งค่านี้มีผลกับโปรเจ็กต์ที่บังคับใช้เท่านั้น
การตั้งค่านี้จะบล็อก คำขอทั้งหมดที่ส่งผ่าน Firebase AI Logic ซึ่ง ไม่ได้ ส่งข้อมูลเข้าสู่ระบบ Firebase Authentication
- ผู้ใช้ต้องได้รับการตรวจสอบสิทธิ์ผ่าน Firebase Authentication ก่อน ส่ง คำขอไปยัง Firebase AI Logic.
- การตั้งค่านี้มีผลกับคำขอ ทั้งหมด ที่ส่งผ่าน Firebase AI Logic ไปยังทั้ง Gemini Developer API และ Vertex AI Gemini API
- การตั้งค่านี้มีผลกับคำขอ ทั้งหมด ที่ใช้ เทมเพลตพรอมต์ของเซิร์ฟเวอร์
- การตั้งค่านี้ ไม่สามารถ ใช้กับผู้ใช้แต่ละราย, API แต่ละรายการ หรือเทมเพลตแต่ละรายการ
การตั้งค่านี้จะไม่บล็อก Gemini API คำขอในโปรเจ็กต์ของคุณซึ่ง _ไม่ได้_ ส่งผ่าน Firebase AI Logic
หากคุณใช้แบบ ไฮบริด / ในอุปกรณ์:
- การตั้งค่านี้จะบล็อก คำขอที่ส่งไปยังโมเดลที่โฮสต์ในระบบคลาวด์หากผู้ใช้ไม่ได้รับการตรวจสอบสิทธิ์
- การตั้งค่านี้จะไม่บล็อก คำขอที่ส่งไปยังโมเดลในอุปกรณ์ ไม่ว่าสถานะการตรวจสอบสิทธิ์ของผู้ใช้จะเป็นอย่างไร
หากคุณใช้ Gemini Live API:
- การตั้งค่านี้จะบล็อก การใช้งาน Gemini Live API สำหรับ เว็บแอป เมื่อ ใช้ Firebase AI Logic แม้แต่สำหรับผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ซึ่งรวมถึงเว็บแอปที่ใช้ Firebase JS SDK หรือ Flutter เว็บ แอป
หากคุณใช้ Firebase AI Logic REST API:
- การตั้งค่านี้จะบล็อก คำขอ การอนุมาน ที่ ไม่ได้ ส่ง
Firebase Authentication ข้อมูลเข้าสู่ระบบ ซึ่งรวมถึงคำขอเทมเพลตพรอมต์ของเซิร์ฟเวอร์ เช่น
templateGenerateContentหรือtemplateStreamGenerateContent - การตั้งค่านี้จะไม่บล็อก คำขอ ระนาบควบคุม (เช่น คำขอสำหรับการจัดการเทมเพลตและการกำหนดค่า) เนื่องจากคำขอเหล่านี้ได้รับการปกป้องโดย IAM
- การตั้งค่านี้จะบล็อก คำขอ การอนุมาน ที่ ไม่ได้ ส่ง
Firebase Authentication ข้อมูลเข้าสู่ระบบ ซึ่งรวมถึงคำขอเทมเพลตพรอมต์ของเซิร์ฟเวอร์ เช่น
การตั้งค่านี้จะไม่บล็อก คำขอที่ส่งไปยัง
countTokens(Count Tokens API)
สิ่งที่ควรทราบก่อนบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
โปรดทราบสิ่งต่อไปนี้ ก่อน บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
หากคุณมีแอปเวอร์ชันเก่าที่ ไม่ได้ ใช้ Firebase Authentication
- การตั้งค่านี้จะบล็อก คำขอที่ส่งผ่านFirebase AI Logic จาก แอปเวอร์ชันเก่าเหล่านั้น
- ตรวจสอบว่าไคลเอ็นต์ที่ใช้งานอยู่ทั้งหมดได้รับการอัปเดตให้ใช้ Firebase Authentication ก่อน บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
ปลั๊กอิน Flutter เวอร์ชันเก่า ต้องมีการ สร้างอินสแตนซ์พิเศษเพื่อส่งFirebase Authentication ข้อมูลเข้าสู่ระบบพร้อมกับคำขอ
- หากแอปใช้ปลั๊กอิน Flutter
firebase_aiv3.11.0 หรือต่ำกว่า (BoM v4.12.0 หรือต่ำกว่า) และ ไม่ได้ ส่ง Authentication ในระหว่างการสร้างอินสแตนซ์ การตั้งค่านี้จะบล็อก คำขอที่ส่งผ่าน Firebase AI Logic — แม้แต่สำหรับผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว - ตรวจสอบว่าไคลเอ็นต์ที่ใช้งานอยู่ทั้งหมดสำหรับ Flutter ได้รับการอัปเดตเป็นปลั๊กอินเวอร์ชันใหม่กว่า ก่อน บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
- หากแอปใช้ปลั๊กอิน Flutter
ตั้งค่า Firebase Authentication
เอกสารประกอบของ Firebase Authentication จะอธิบายและให้วิธีการติดตั้งใช้งานสำหรับผู้ให้บริการการตรวจสอบสิทธิ์ที่รองรับ ซึ่งรวมถึงการใช้รหัสผ่าน หมายเลขโทรศัพท์ ผู้ให้บริการข้อมูลประจำตัวแบบรวมศูนย์ยอดนิยม (เช่น Google, Facebook และ GitHub) และอื่นๆ
หลังจากติดตั้งใช้งาน Firebase Authentication ในแอปแล้ว แอปจะส่งข้อมูลเข้าสู่ระบบ Firebase Authentication สำหรับผู้ใช้ที่ตรวจสอบสิทธิ์แล้วในทุกคำขอที่ส่งไปยัง Firebase AI Logic โดยอัตโนมัติ
โปรดทราบข้อมูลต่อไปนี้เกี่ยวกับผู้ให้บริการการตรวจสอบสิทธิ์บางราย
การตรวจสอบสิทธิ์ที่กำหนดเอง: คุณต้องดึงข้อมูลโทเค็นการตรวจสอบสิทธิ์ที่ลงชื่อแล้วเพื่อส่งไปพร้อมกับ คำขอที่ส่งไปยัง Firebase AI Logic โปรดดูรายละเอียดที่ หัวข้อการตรวจสอบสิทธิ์ที่กำหนดเอง
วิธีการตรวจสอบสิทธิ์แบบไม่ระบุตัวตน หรืออีเมล/รหัสผ่าน: ระบบจะถือว่าผู้ใช้เหล่านี้เป็นผู้ใช้ ที่ตรวจสอบสิทธิ์แล้ว ดังนั้นระบบจึง ไม่บล็อกคำขอที่ส่งไปยัง Firebase AI Logic
โปรดทราบว่าแม้ว่าวิธีการตรวจสอบสิทธิ์แบบไม่ระบุตัวตนและอีเมล/รหัสผ่าน กำหนดให้ผู้ใช้ต้องเข้าชมแอปเพื่อสร้างFirebase Authentication ข้อมูลเข้าสู่ระบบวิธีการเหล่านี้ไม่ใช่การตรวจสอบสิทธิ์ที่มีประสิทธิภาพ (โดยเฉพาะอย่างยิ่งสำหรับการ ปกป้องทรัพยากรที่ต้องชำระเงิน) เนื่องจากโดยค่าเริ่มต้นแล้ววิธีการเหล่านี้ไม่ได้กำหนดให้ผู้ใช้ต้องยืนยันตัวตน หากแอปใช้การติดตั้งใช้งานเริ่มต้นของวิธีการตรวจสอบสิทธิ์เหล่านี้ ก็อาจมีการป้องกันน้อยลงแม้ว่าคุณจะบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วก็ตาม ตรวจสอบว่าคุณได้ บังคับใช้ แล้วด้วยFirebase App Check
จัดการการตั้งค่าโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
คุณจัดการการตั้งค่าโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วได้ในคอนโซล Firebase
บทบาทและสิทธิ์ IAM ที่จำเป็น
การจัดการการตั้งค่าโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วต้องมีสิทธิ์ firebasevertexai.configs.update ซึ่งรวมอยู่ในบทบาท IAM ต่อไปนี้โดยค่าเริ่มต้น ได้แก่ เจ้าของ ผู้แก้ไข ผู้ดูแลระบบ Firebase และผู้ดูแลระบบ Firebase AI Logic
บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
วิธีบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วสำหรับโปรเจ็กต์ Firebase มีดังนี้
หากยังไม่ได้ดำเนินการ โปรดอ่าน ข้อควรพิจารณาที่สำคัญสำหรับ โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วที่กล่าวถึงก่อนหน้านี้ในคู่มือนี้
หากยังไม่ได้ดำเนินการ ให้ตั้งค่า Firebase Authentication ในแอป (ตามที่อธิบายไว้ก่อนหน้านี้ในคู่มือนี้)
บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วโดยทำดังนี้
ในคอนโซล Firebase ให้ไปที่บริการ AI > AI Logic > แท็บการตั้งค่า
ในส่วนโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ให้เลื่อนปุ่มเปิด/ปิดสำหรับ บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ไปที่ บังคับใช้
อ่านกล่องโต้ตอบการยืนยัน แล้วคลิกยืนยัน
หยุดการบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
หากหยุดการบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว โปรดทราบสิ่งต่อไปนี้
- ระบบจะอนุญาตคำขอที่ส่งผ่าน Firebase AI Logic ซึ่ง ไม่ได้ ส่ง Firebase Authentication ข้อมูลเข้าสู่ระบบ
- การตั้งค่านี้เป็นการตั้งค่าทั่วทั้งโปรเจ็กต์ สำหรับ Firebase AI Logic
วิธีหยุดการบังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้วสำหรับโปรเจ็กต์ Firebase มีดังนี้
ในคอนโซล Firebase ให้ไปที่บริการ AI > AI Logic > แท็บการตั้งค่า
ในส่วนโหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว ให้ปิด บังคับใช้โหมดผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว
อ่านกล่องโต้ตอบการยืนยัน แล้วคลิกยืนยัน