Xác thực Firebase

Hầu hết các ứng dụng đều cần biết danh tính của người dùng. Việc biết danh tính của người dùng cho phép ứng dụng lưu dữ liệu người dùng một cách an toàn trên đám mây và mang lại cùng một trải nghiệm được cá nhân hoá trên tất cả các thiết bị của người dùng.

Tính năng Xác thực Firebase cung cấp các dịch vụ phụ trợ, SDK dễ sử dụng và thư viện giao diện người dùng tạo sẵn để xác thực người dùng với ứng dụng của bạn. Tính năng này hỗ trợ xác thực bằng mật khẩu, số điện thoại, các nhà cung cấp danh tính được liên kết phổ biến như Google, Facebook và Twitter, v.v.

Tính năng Xác thực Firebase tích hợp chặt chẽ với các dịch vụ khác của Firebase, đồng thời tận dụng các tiêu chuẩn ngành như OAuth 2.0 và OpenID Connect, nhờ đó bạn có thể dễ dàng tích hợp với phần phụ trợ tuỳ chỉnh của mình.

Khi nâng cấp lên Xác thực Firebase bằng Nền tảng nhận dạng, bạn có thể sử dụng các tính năng bổ sung, chẳng hạn như xác thực đa yếu tố, hàm chặn, hoạt động của người dùng và ghi nhật ký kiểm tra, hỗ trợ SAML và OpenID Connect chung, hỗ trợ đa khách hàng và hỗ trợ cấp doanh nghiệp.

Tìm hiểu cách bắt đầu

Các chức năng chính

Bạn có thể đăng nhập người dùng vào ứng dụng Firebase bằng cách sử dụng FirebaseUI làm giải pháp xác thực thả hoàn chỉnh hoặc sử dụng SDK xác thực Firebase để tích hợp theo cách thủ công một hoặc nhiều phương thức đăng nhập vào ứng dụng của bạn.

Xác thực FirebaseUI
Giải pháp xác thực thả xuống

Bạn nên thêm hệ thống đăng nhập hoàn chỉnh vào ứng dụng của mình.

FirebaseUI cung cấp giải pháp xác thực thả xuống xử lý các quy trình giao diện người dùng để người dùng đăng nhập bằng địa chỉ email, mật khẩu, số điện thoại và với các nhà cung cấp danh tính được liên kết phổ biến, bao gồm cả tính năng Đăng nhập bằng Google và Đăng nhập bằng Facebook.

Thành phần Xác thực FirebaseUI triển khai các phương pháp hay nhất để xác thực trên thiết bị di động và trang web, giúp tối đa hoá lượt chuyển đổi đăng nhập và đăng ký cho ứng dụng. Thành phần này cũng xử lý các trường hợp hiếm gặp như khôi phục tài khoản và liên kết tài khoản có thể nhạy cảm về tính bảo mật và dễ gặp lỗi để xử lý đúng cách.

Bạn có thể dễ dàng tuỳ chỉnh FirebaseUI cho phù hợp với các kiểu hình ảnh còn lại của ứng dụng. Đây là một nguồn mở nên bạn không bị bó buộc trong việc hiện thực hoá trải nghiệm người dùng mà mình mong muốn.

iOS Android Web

Xác thực SDK Firebase
Xác thực dựa trên email và mật khẩu

Xác thực người dùng bằng địa chỉ email và mật khẩu của họ. SDK xác thực Firebase cung cấp các phương thức để tạo và quản lý những người dùng sử dụng địa chỉ email và mật khẩu của họ để đăng nhập. Tính năng Xác thực Firebase cũng xử lý việc gửi email đặt lại mật khẩu.

iOS Android Web C++ Unity

Tích hợp nhà cung cấp danh tính liên kết

Xác thực người dùng bằng cách tích hợp với các nhà cung cấp danh tính được liên kết. SDK xác thực Firebase cung cấp các phương thức cho phép người dùng đăng nhập bằng tài khoản Google, Facebook, Twitter và GitHub.

Google iOS Android Web C++ Unity
Đăng nhập bằng Apple iOS Android Web C++ Unity
Facebook iOS Android Web C++ Unity
Twitter iOS Android Web C++ Unity
GitHub iOS Android Web C++ Unity
Xác thực số điện thoại

Xác thực người dùng bằng cách gửi tin nhắn SMS đến điện thoại của họ.

iOS Android Web C++ Unity

Tích hợp hệ thống xác thực tuỳ chỉnh

Kết nối hệ thống đăng nhập hiện có trong ứng dụng của bạn với SDK xác thực Firebase và có quyền truy cập vào Cơ sở dữ liệu theo thời gian thực của Firebase cũng như các dịch vụ khác của Firebase.

iOS Android Web C++ Unity

Xác thực ẩn danh

Sử dụng các tính năng yêu cầu xác thực mà không yêu cầu người dùng đăng nhập trước bằng cách tạo tài khoản ẩn danh tạm thời. Nếu sau đó người dùng chọn đăng ký, bạn có thể nâng cấp tài khoản ẩn danh lên tài khoản thông thường để người dùng có thể tiếp tục từ nơi họ đã dừng lại.

iOS Android Web C++ Unity

Xác thực Firebase bằng nền tảng nhận dạng

Xác thực Firebase bằng Nền tảng nhận dạng là một bản nâng cấp không bắt buộc, bổ sung một số tính năng mới vào tính năng Xác thực Firebase.

Quá trình nâng cấp này không yêu cầu bạn phải di chuyển — SDK ứng dụng khách và mã SDK quản trị hiện tại của bạn sẽ tiếp tục hoạt động như trước đây, đồng thời bạn sẽ có quyền truy cập ngay vào các tính năng như ghi nhật ký nâng cao, hỗ trợ cấp doanh nghiệp và SLA. Với một số mã bổ sung, bạn sẽ có thể thêm tính năng xác thực đa yếu tố, hàm chặn và hỗ trợ các nhà cung cấp SAML và OpenID Connect.

Nền tảng Xác thực Firebase bằng Nền tảng nhận dạng có cơ chế định giá khác so với sản phẩm cơ sở. Khi được nâng cấp, các dự án gói miễn phí (Spark) sẽ giới hạn ở 3.000 người dùng hoạt động hằng ngày, và các dự án gói trả tiền theo mức dùng (Blaze) sẽ được tính phí cho mức sử dụng vượt quá mức miễn phí 50.000 người dùng hoạt động hằng tháng. Hãy chắc chắn rằng bạn hiểu các ngụ ý thanh toán trước khi nâng cấp.

Đọc thêm về các tính năng mới, giá và giới hạn bên dưới.

Tính năng

Xác thực đa yếu tố

Tính năng xác thực đa yếu tố qua SMS giúp bảo vệ dữ liệu của người dùng bằng cách thêm một lớp bảo mật thứ hai cho ứng dụng.

Tìm hiểu cách thêm tính năng xác thực đa yếu tố (MFA) vào các ứng dụng Apple, Androidweb.

Hàm chặn

Hàm chặn cho phép bạn chạy mã tuỳ chỉnh sửa đổi kết quả khi người dùng đăng ký hoặc đăng nhập vào ứng dụng của bạn.

Tìm hiểu cách mở rộng tính năng Xác thực Firebase bằng các hàm chặn.

Nhà cung cấp SAML và SSO Connect

Hỗ trợ đăng nhập bằng SAML (chỉ trên web) và nhà cung cấp SAML Connect không được Firebase hỗ trợ ngay.

Tìm hiểu cách thêm tính năng đăng nhập qua SAML vào ứng dụng web và đăng nhập bằng SAML Connect vào ứng dụng Apple, Androidweb.

Hoạt động của người dùng và ghi nhật ký kiểm tra

Giám sát và ghi nhật ký quyền quản trị cũng như hoạt động của người dùng cuối.

Khi nâng cấp dự án, bạn sẽ tự động bật nhật ký kiểm tra hoạt động của quản trị viên trong tính năng Ghi nhật ký trên đám mây. Bạn cũng có thể bật tính năng ghi nhật ký hoạt động của người dùng trên trang Cài đặt xác thực trong bảng điều khiển của Firebase.

Để tìm hiểu cách xem và phân tích nhật ký, hãy tham khảo tài liệu về Cách ghi nhật ký trên đám mây.

Ngăn chặn hành vi sai trái bằng tính năng Kiểm tra ứng dụng

Tính năng Kiểm tra ứng dụng giúp bảo vệ dự án của bạn khỏi hành vi sai trái bằng cách ngăn chặn các ứng dụng trái phép truy cập vào điểm cuối xác thực của bạn.

Để tìm hiểu cách bật tính năng Kiểm tra ứng dụng, vui lòng xem Tài liệu về tính năng Kiểm tra ứng dụng.

Nhiều người dùng

Khi sử dụng đối tượng thuê, bạn có thể tạo nhiều phòng ban tách biệt người dùng và cấu hình riêng biệt trong một dự án.

Hãy xem bài viết Bắt đầu sử dụng mô hình đa khách hàng trong tài liệu về Cloud Identity Platform.

Dịch vụ hỗ trợ doanh nghiệp và Thoả thuận mức độ cung cấp dịch vụ (SLA)

Các dự án đã nâng cấp được đảm bảo về thời gian hoạt động cho các dịch vụ Xác thực theo Thoả thuận mức độ cung cấp dịch vụ cho nền tảng nhận dạng (SLA) và được hỗ trợ ở cấp doanh nghiệp.

Tự động xoá người dùng ẩn danh

Bạn có thể chọn cho phép tự động xoá các tài khoản ẩn danh nếu các tài khoản đó đã quá 30 ngày. Các tài khoản ẩn danh cũng sẽ không được tính vào hạn mức thanh toán và sử dụng nữa.

Hạn mức sử dụng

Sau khi nâng cấp, tính năng Xác thực Firebase bằng Nền tảng danh tính sẽ đưa ra các giới hạn mới cho việc bạn sử dụng tính năng Xác thực Firebase.

Miễn phí (Spark)

Các dự án thuộc gói không tốn phí (Spark) có giới hạn mới là 3.000 người dùng hoạt động hằng ngày (DAU) đối với hầu hết các nhà cung cấp dịch vụ đăng nhập. Mức sử dụng hoạt động hằng ngày được tính toán dựa trên số lượng người dùng riêng biệt đăng nhập trong khoảng thời gian 24 giờ.

Nhà cung cấp Giới hạn mới Hạn mức cũ
Email, Mạng xã hội, Ẩn danh, Tùy chỉnh 3.000 người dùng hoạt động hằng ngày Không giới hạn
SAML, SSO Connect 2 người dùng hoạt động hằng ngày Không áp dụng

Trả tiền theo mức dùng (Blaze)

Giá cho các dự án trong Gói linh hoạt được dựa trên số người dùng hoạt động hằng tháng (MAU) và bao gồm cấp không tốn phí là 50.000 người dùng. Người dùng đang hoạt động là bất kỳ ai sử dụng tài khoản của họ trong kỳ thanh toán.

Nhà cung cấp Bậc không mất phí Chi phí ($) trên mỗi MAU cao hơn bậc không tốn phí
Email, Mạng xã hội, Ẩn danh, Tùy chỉnh 0 – 49.999 MAU 0,0025 đến 0,0055 mỗi MAU
SAML, SSO Connect 0 – 49 MAU 0,015/MAU

Nâng cấp dự án của bạn

Để nâng cấp dự án của bạn lên tính năng Xác thực Firebase bằng Nền tảng nhận dạng, hãy mở trang Cài đặt xác thực trong bảng điều khiển của Firebase.

Tính năng này hoạt động như thế nào?

Các đường liên kết có tác dụng tốt cho nền tảng

Để đăng nhập người dùng vào ứng dụng, trước tiên, bạn phải nhận được thông tin xác thực từ người dùng đó. Các thông tin xác thực này có thể là địa chỉ email và mật khẩu của người dùng hoặc mã thông báo OAuth từ một nhà cung cấp danh tính được liên kết. Sau đó, bạn chuyển các thông tin đăng nhập này đến SDK xác thực Firebase. Sau đó, các dịch vụ phụ trợ của chúng tôi sẽ xác minh những thông tin xác thực đó và trả về phản hồi cho khách hàng.

Sau khi đăng nhập thành công, bạn có thể truy cập vào thông tin hồ sơ cơ bản của người dùng, đồng thời có thể kiểm soát quyền truy cập của người dùng vào dữ liệu được lưu trữ trong các sản phẩm Firebase khác. Bạn cũng có thể sử dụng mã xác thực được cung cấp để xác minh danh tính của người dùng trong các dịch vụ phụ trợ của riêng bạn.

Lộ trình triển khai

Sử dụng tính năng Xác thực FirebaseUI
Thiết lập phương thức đăng nhập Đối với địa chỉ email và mật khẩu hoặc để đăng nhập bằng số điện thoại và bất kỳ nhà cung cấp danh tính được liên kết nào mà bạn muốn hỗ trợ, hãy bật các nhà cung cấp đó trong bảng điều khiển của Firebase rồi hoàn tất mọi cấu hình do nhà cung cấp danh tính yêu cầu, chẳng hạn như đặt URL chuyển hướng OAuth.
Tuỳ chỉnh giao diện đăng nhập Bạn có thể tuỳ chỉnh giao diện người dùng đăng nhập bằng cách đặt các tuỳ chọn FirebaseUI hoặc phân nhánh mã trên GitHub để tuỳ chỉnh thêm trải nghiệm đăng nhập.
Sử dụng FirebaseUI để thực hiện quy trình đăng nhập Nhập thư viện FirebaseUI, chỉ định phương thức đăng nhập mà bạn muốn hỗ trợ và bắt đầu quy trình đăng nhập FirebaseUI.
Sử dụng SDK xác thực Firebase
Thiết lập phương thức đăng nhập Đối với địa chỉ email và mật khẩu hoặc để đăng nhập bằng số điện thoại và bất kỳ nhà cung cấp danh tính được liên kết nào mà bạn muốn hỗ trợ, hãy bật các nhà cung cấp đó trong bảng điều khiển của Firebase rồi hoàn tất mọi cấu hình do nhà cung cấp danh tính yêu cầu, chẳng hạn như đặt URL chuyển hướng OAuth.
Triển khai luồng giao diện người dùng cho phương thức đăng nhập của bạn Đối với thông tin đăng nhập bằng địa chỉ email và mật khẩu, hãy triển khai một quy trình nhắc người dùng nhập địa chỉ email và mật khẩu của họ. Đối với quy trình đăng nhập bằng số điện thoại, hãy tạo một quy trình nhắc người dùng nhập số điện thoại của họ, sau đó nhắc người dùng nhập mã trong tin nhắn SMS mà họ nhận được. Đối với quy trình đăng nhập liên kết, hãy triển khai quy trình do từng nhà cung cấp yêu cầu.
Truyền thông tin đăng nhập của người dùng đến SDK xác thực Firebase Chuyển địa chỉ email và mật khẩu của người dùng hoặc mã thông báo OAuth mà bạn nhận được từ nhà cung cấp danh tính liên kết đến SDK xác thực Firebase.

Bước tiếp theo

Hãy tìm hiểu thêm về người dùng trong một dự án Firebase, sau đó xem hướng dẫn tích hợp dành cho các nhà cung cấp dịch vụ đăng nhập mà bạn muốn hỗ trợ:

iOS Android Web C++ Unity Quản trị viên

Bạn chưa biết nên bắt đầu từ đâu?

Tìm hiểu cách bắt đầu