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ả yêu cầu Gemini API 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 gửi yêu cầu đến Firebase AI Logic từ ứng dụng của bạn. 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 đối với 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.
- Chế độ này áp dụng cho tất cả ứng dụng đã đăng ký trong dự án.
- Chính sách này chỉ áp dụng cho dự án mà chính sách được 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 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ả yêu cầu thông qua Firebase AI Logic cho cả Gemini Developer API và Agent Platform Gemini API (formerly Vertex AI).
- Chế độ cài đặt này áp dụng cho tất cả yêu cầu sử dụng mẫu câu lệnh phí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 mà 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 gửi đến 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 gửi đến 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 chặn việc sử dụng Gemini Live API cho ứng dụng web khi sử dụng Firebase AI Logic, ngay cả đối với người dùng đã xác thực. Điều này bao gồm các ứng dụng web sử dụng SDK Firebase JS hoặc ứng dụng web Flutter.
Nếu bạn đang sử dụng API REST Firebase AI Logic:
- Chế độ cài đặt này 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 mặt phẳng đ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 IAM bảo vệ.
- Chế độ cài đặt này 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(API Count Tokens).
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 ứng dụng hiện tại không sử dụng Firebase Authentication:
- Chế độ cài đặt này sẽ chặn các yêu cầu qua Firebase AI Logic từ các phiên bản ứng dụng hiện có đó.
- Đảm bảo rằng tất cả ứng dụng khách đang hoạt động đều đã đượ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 trình bổ trợ Flutter cũ yêu cầu phải tạo thực thể đặc biệt để gửi thông tin xác thực 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 tạo thực thể, 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ả ứng dụng Flutter đang hoạt động đều đã đượ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 về 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, 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 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.
Hãy lưu ý những điều sau 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, vì vậy, yêu cầu của họ đối với Firebase AI Logic không bị chặn.
Lưu ý rằng mặc dù phương thức xác thực ẩn danh và 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 Firebase Authentication thông tin đăng nhập, 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 cách triển khai mặc định của các phương thức xác thực này, thì mức độ bảo vệ có thể 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ế độ cài đặt 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ó trong 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 bạn chưa xem, hãy xem lại 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 của hướng dẫn này.
Nếu bạn chưa thực hiện, hãy thiết lập Firebase Authentication trong ứng dụng của bạn (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 phần Dịch vụ AI > Logic AI > thẻ Cài đặt.
Trong phần 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 sang Đã thực thi.
Xem lại hộp thoại xác nhận, sau đó nhấp vào Xác nhận.
Ngừ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 qua Firebase AI Logic 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 ngừ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 phần Chế độ người dùng đã xác thực, hãy tắt chế độ Thực thi chế độ người dùng đã xác thực.
Xem lại hộp thoại xác nhận, sau đó nhấp vào Xác nhận.