Bạn có thể thực thi chế độ người dùng đã xác thực cho dự án Firebase của mình. Khi được thực thi, tất cả các yêu cầu Gemini API thông qua Firebase AI Logic phải đến từ người dùng đã xác thực của ứng dụng. Cụ thể, người dùng cuối của ứng dụng phải được xác thực bằng Firebase Authentication trước khi họ gửi yêu cầu đến Firebase AI Logic từ ứng dụng. Nếu người dùng cuối chưa được xác thực, yêu cầu sẽ bị chặn.
Khi một yêu cầu bị chặn, phản hồi sẽ là lỗi 401: unauthenticated.
Những điểm quan trọng cần lưu ý
Hãy lưu ý những điểm quan trọng sau đây khi cân nhắc chế độ người dùng đã xác thực.
.Khi chế độ người dùng đã xác thực được thực thi
Khi chế độ người dùng đã xác thực được thực thi, hãy lưu ý những điều sau:
Đây là chế độ cài đặt trên toàn dự án cho Firebase AI Logic.
- Quy tắc này áp dụng cho tất cả ứng dụng đã đăng ký trong dự án.
- Quy tắc này chỉ áp dụng cho dự án mà bạn thực thi.
Chế độ cài đặt này chặn tất cả các yêu cầu thông qua Firebase AI Logic mà không gửi thông tin xác thực Firebase Authentication.
- Người dùng phải được xác thực thông qua Firebase Authentication trước khi gửi yêu cầu đến Firebase AI Logic.
- Chế độ cài đặt này áp dụng cho tất cả các yêu cầu thông qua Firebase AI Logic đối với cả Gemini Developer API và Vertex AI Gemini API.
- Chế độ cài đặt này áp dụng cho tất cả các yêu cầu sử dụng mẫu lời nhắc của máy chủ.
- Bạn không thể áp dụng chế độ cài đặt này cho từng người dùng, từng API hoặc từng mẫu.
Chế độ cài đặt này không chặn các yêu cầu Gemini API trong dự án của bạn không thông qua Firebase AI Logic.
Nếu bạn đang sử dụng mô hình kết hợp / trên thiết bị:
- Chế độ cài đặt này chặn các yêu cầu đối với mô hình được lưu trữ trên đám mây nếu người dùng chưa được xác thực.
- Chế độ cài đặt này không chặn các yêu cầu đối với mô hình trên thiết bị, bất kể trạng thái xác thực của người dùng.
Nếu bạn đang sử dụng Gemini Live API:
- Chế độ cài đặt này sẽ chặn việc sử dụng Gemini Live API cho ứng dụng web khi dùng Firebase AI Logic – ngay cả đối với người dùng đã xác thực. Trong đó có các ứng dụng web sử dụng Firebase JS SDK hoặc ứng dụng web Flutter.
Nếu bạn đang sử dụng Firebase AI Logic API REST:
- Chế độ cài đặt này sẽ chặn các yêu cầu suy luận không gửi thông tin xác thực Firebase Authentication. Điều này bao gồm các yêu cầu về mẫu câu lệnh của máy chủ như
templateGenerateContenthoặctemplateStreamGenerateContent. - Chế độ cài đặt này không chặn các yêu cầu lớp điều khiển (chẳng hạn như các yêu cầu để quản lý mẫu và cấu hình) vì các yêu cầu này được bảo vệ bằng IAM.
- Chế độ cài đặt này sẽ chặn các yêu cầu suy luận không gửi thông tin xác thực Firebase Authentication. Điều này bao gồm các yêu cầu về mẫu câu lệnh của máy chủ như
Chế độ cài đặt này không chặn các yêu cầu đến
countTokens(Count Tokens API).
Trước khi thực thi chế độ người dùng đã xác thực
Hãy lưu ý những điều sau trước khi bạn thực thi chế độ người dùng đã xác thực:
Nếu bạn có các phiên bản hiện tại của ứng dụng không sử dụng Firebase Authentication:
- Chế độ cài đặt này sẽ chặn các yêu cầu thông qua Firebase AI Logic từ những phiên bản ứng dụng hiện có đó.
- Đảm bảo rằng tất cả ứng dụng đang hoạt động đã được cập nhật để sử dụng Firebase Authentication trước khi thực thi chế độ người dùng đã xác thực.
Các phiên bản cũ hơn của trình bổ trợ Flutter yêu cầu khởi tạo đặc biệt để gửi thông tin đăng nhập Firebase Authentication cùng với các yêu cầu.
- Nếu ứng dụng của bạn sử dụng trình bổ trợ Flutter
firebase_aiphiên bản 3.11.0 trở xuống (BoM phiên bản 4.12.0 trở xuống) và không truyền Authentication trong quá trình khởi tạo, thì chế độ cài đặt này sẽ chặn các yêu cầu thông qua Firebase AI Logic – ngay cả đối với người dùng đã xác thực. - Đảm bảo rằng tất cả các ứng dụng Flutter đang hoạt động đã được cập nhật lên phiên bản mới hơn của trình bổ trợ trước khi thực thi chế độ người dùng đã xác thực.
- Nếu ứng dụng của bạn sử dụng trình bổ trợ Flutter
Thiết lập Firebase Authentication
Tài liệu Firebase Authentication cung cấp nội dung mô tả và hướng dẫn triển khai cho các nhà cung cấp dịch vụ xác thực được hỗ trợ, bao gồm cả việc sử dụng mật khẩu, số điện thoại, các nhà cung cấp danh tính liên kết phổ biến (như Google, Facebook và GitHub), v.v.
Sau khi bạn triển khai Firebase Authentication trong ứng dụng, ứng dụng của bạn sẽ tự động gửi thông tin đăng nhập Firebase Authentication cho người dùng đã xác thực trong mọi yêu cầu đến Firebase AI Logic.
Xin lưu ý những điều sau đây về một số nhà cung cấp dịch vụ xác thực:
Xác thực tuỳ chỉnh: Bạn cần tìm nạp mã thông báo xác thực đã ký để gửi cùng với yêu cầu đến Firebase AI Logic. Để biết thông tin chi tiết, hãy xem phần Xác thực tuỳ chỉnh.
Phương thức xác thực Ẩn danh hoặc Email/Mật khẩu: Những người dùng này được coi là người dùng đã xác thực, nên các yêu cầu của họ đối với Firebase AI Logic sẽ không bị chặn.
Xin lưu ý rằng mặc dù các phương thức xác thực ẩn danh và xác thực bằng email/mật khẩu yêu cầu người dùng truy cập vào ứng dụng của bạn để tạo thông tin xác thực Firebase Authentication, nhưng đây không phải là các hình thức xác thực mạnh mẽ (đặc biệt là để bảo vệ tài nguyên có tính phí) vì theo mặc định, các phương thức này không yêu cầu người dùng xác minh danh tính. Nếu ứng dụng của bạn sử dụng chế độ triển khai mặc định của các phương thức xác thực này, thì khả năng bảo vệ có thể sẽ thấp hơn ngay cả khi bạn thực thi chế độ người dùng đã xác thực. Đảm bảo rằng bạn cũng đã thực thi Firebase App Check.
Quản lý chế độ cài đặt chế độ người dùng đã xác thực
Bạn quản lý chế độ cài đặt cho chế độ người dùng đã xác thực trong bảng điều khiển Firebase.
.Các quyền và vai trò bắt buộc trong IAM
Để quản lý chế độ người dùng đã xác thực, bạn cần có quyền firebasevertexai.configs.update. Theo mặc định, quyền này được cấp cho các vai trò IAM sau: Chủ sở hữu, Người chỉnh sửa, Quản trị viên Firebase và Quản trị viên Firebase AI Logic.
Thực thi chế độ người dùng đã xác thực
Sau đây là cách thực thi chế độ người dùng đã xác thực cho dự án Firebase của bạn:
Nếu chưa, hãy xem xét những điểm quan trọng cần cân nhắc đối với chế độ người dùng đã xác thực ở phần trước trong hướng dẫn này.
Nếu bạn chưa làm, hãy thiết lập Firebase Authentication trong ứng dụng của mình (như mô tả ở phần trước trong hướng dẫn này).
Thực thi chế độ người dùng đã xác thực:
Trong bảng điều khiển Firebase, hãy chuyển đến Dịch vụ AI > Logic AI > Thẻ Cài đặt.
Trong Chế độ người dùng đã xác thực, hãy trượt nút bật/tắt cho Thực thi chế độ người dùng đã xác thực thành Đã thực thi.
Xem lại hộp thoại xác nhận, rồi nhấp vào Xác nhận.
Dừng thực thi chế độ người dùng đã xác thực
Nếu bạn ngừng thực thi chế độ người dùng đã xác thực, hãy lưu ý những điều sau:
- Các yêu cầu thông qua Firebase AI Logic mà không gửi thông tin đăng nhập Firebase Authentication sẽ được cho phép.
- Đây là chế độ cài đặt trên toàn dự án cho Firebase AI Logic.
Sau đây là cách dừng thực thi chế độ người dùng đã xác thực cho dự án Firebase của bạn:
Trong bảng điều khiển Firebase, hãy chuyển đến Dịch vụ AI > Logic AI > Thẻ Cài đặt.
Trong Chế độ người dùng đã xác thực, hãy tắt Bắt buộc chế độ người dùng đã xác thực.
Xem lại hộp thoại xác nhận, rồi nhấp vào Xác nhận.