Tính năng Đăng nhập bằng Google giúp bạn quản lý nhanh quá trình xác thực người dùng trên trang web của mình. Người dùng đăng nhập vào Tài khoản Google, đồng ý và chia sẻ thông tin hồ sơ của họ với nền tảng của bạn một cách an toàn.
Các nút có thể tuỳ chỉnh và nhiều luồng được hỗ trợ cho hoạt động đăng ký và đăng nhập của người dùng.
Quy trình đăng ký là các bước để có được sự đồng ý của chủ Tài khoản Google về việc chia sẻ thông tin hồ sơ của họ với nền tảng của bạn. Thông thường, một tài khoản mới được tạo trên trang web của bạn bằng dữ liệu chia sẻ này, nhưng điều này không bắt buộc.
Đăng nhập là việc giúp người dùng đăng nhập vào trang web của bạn bằng Tài khoản Google đang hoạt động của họ thông qua một nút đăng nhập được cá nhân hoá hoặc tính năng Một lần chạm và Đăng nhập tự động đối với những người dùng đã đăng nhập vào Tài khoản Google của họ.
Xem Nghiên cứu điển hình để biết một số câu chuyện thành công về việc tích hợp tính năng Đăng nhập bằng Google.
Bạn cũng có thể sử dụng API uỷ quyền Dịch vụ danh tính của Google. API này cho phép bạn lấy mã truy cập để sử dụng với các API của Google hoặc truy cập vào dữ liệu người dùng.
Bản minh hoạ tính năng Đăng nhập bằng Google
Nhấp vào nút này để đăng nhập vào Tài khoản Google của bạn.
Quyền riêng tư của người dùng
Dữ liệu trong quy trình Đăng nhập bằng Google không được dùng cho mục đích quảng cáo hoặc các mục đích không bảo mật khác.
Trường hợp sử dụng
Một số lý do cần thêm tính năng Đăng nhập bằng Google vào trang web của bạn là:
- Thêm nút Đăng nhập bằng Google an toàn và đáng tin cậy rõ ràng vào trang tạo hoặc cài đặt tài khoản.
- Điền sẵn dữ liệu được chia sẻ đồng thuận từ một hồ sơ Tài khoản Google cho các tài khoản mới.
- Người dùng có thể đăng nhập một lần vào Tài khoản Google mà không cần nhập lại tên người dùng hoặc mật khẩu trên các trang web khác.
- Khi truy cập lại, người dùng có thể đăng nhập tự động hoặc bằng một lần nhấp trên toàn bộ trang web.
- Sử dụng Tài khoản Google đã xác minh để bảo vệ bình luận, phiếu bầu hoặc biểu mẫu khỏi hành vi sai trái trong khi vẫn cho phép ẩn danh.
Tính năng được hỗ trợ
Các tính năng sau được tính năng Đăng nhập bằng Google hỗ trợ:
- Đăng ký để tuỳ ý tạo một tài khoản mới, tự động điền từ hồ sơ Tài khoản Google.
- Đăng nhập bằng trình chọn tài khoản để chọn trong số nhiều tài khoản.
- Đăng nhập chỉ bằng một lần nhấn nếu bạn đã đăng nhập vào Tài khoản Google.
- Đăng nhập tự động, bằng máy tính, điện thoại hoặc thậm chí là nhiều thẻ trình duyệt khi truy cập lại.
- Hãy đăng xuất để tắt tính năng tự động đăng nhập trên tất cả các thiết bị của bạn.
Lưu ý về mức độ ảnh hưởng của các trạng thái tài khoản đối với tính năng Đăng nhập bằng Google:
- Khi bạn tạm ngưng Tài khoản Google, ứng dụng sẽ dừng đăng nhập vào tất cả các trang web bằng tính năng Đăng nhập bằng Google.
- Việc xoá tài khoản Google hoặc tài khoản đối tác sẽ ảnh hưởng đến một trong hai trường hợp này, nhưng không ảnh hưởng đến các tài khoản còn lại.
So sánh với OAuth và OpenId Connect
OAuth và OpenId Connect là các tiêu chuẩn mở cung cấp nhiều tuỳ chọn có thể định cấu hình để tinh chỉnh hành vi của luồng xác thực và uỷ quyền. Tham khảo tài liệu về OAuth của Google để biết thêm thông tin chi tiết.
Tính năng Đăng nhập bằng Google cung cấp một SDK duy nhất bao gồm nhiều dịch vụ có liên quan, chẳng hạn như nút được cá nhân hoá, tính năng Một lần chạm, tính năng Tự động đăng nhập và uỷ quyền. Hộp cát về quyền riêng tư hướng đến việc cung cấp cho nhà phát triển trải nghiệm dễ dàng và an toàn hơn so với các giao thức OAuth và OpenID Connect tiêu chuẩn, đồng thời cung cấp trải nghiệm người dùng liền mạch hơn.
- Tính năng Đăng nhập bằng Google dựa trên OAuth 2.0. Các quyền mà người dùng cấp thông qua tính năng Đăng nhập bằng Google cũng giống như các quyền họ cấp cho OAuth và ngược lại.
- OAuth 2.0 cũng là giao thức tiêu chuẩn ngành cho việc uỷ quyền. Giao thức này cung cấp một tập hợp các điểm cuối mà các bên dựa vào sẽ tích hợp bằng HTTP.
- API Dịch vụ nhận dạng của Google (GIS) hiện được cung cấp bằng một số ngôn ngữ (bao gồm cả JavaScript và HTML). API này cung cấp cả quá trình xác thực và uỷ quyền.
- GIS tách thời điểm xác thực khỏi thời điểm cấp phép. Trong thời điểm xác thực, bạn có thể tích hợp nhanh chóng bằng cách chỉ cần tích hợp một số thành phần trên giao diện người dùng vào trang web của mình (chẳng hạn như nút được cá nhân hoá, tính năng Một lần chạm và tính năng đăng nhập tự động). Các thành phần này trên giao diện người dùng mang đến trải nghiệm người dùng xác thực nhất quán trên tất cả các trang web bên thứ ba. Trong thời điểm uỷ quyền, GIS sẽ kích hoạt các luồng OAuth để thay mặt người dùng trả về các mã thông báo truy cập vào dữ liệu.
- Việc xác thực GIS giúp việc tích hợp với các bên dựa trên dữ liệu trở nên dễ dàng hơn và giảm hầu hết gánh nặng về OAuth và kiến thức bảo mật cho nhà phát triển. Bạn không cần phải chọn trong số nhiều phương pháp để lấy mã truy cập hay mã uỷ quyền, hoặc gặp rủi ro sau khi chọn sai phương pháp. Mặc dù giao thức OAuth 2.0 hiển thị nhiều thông tin chi tiết, chẳng hạn như tham số yêu cầu và phản hồi của các điểm cuối HTTP, nhưng GIS sẽ xử lý các chi tiết triển khai này cho bạn. Ngoài ra, theo mặc định, GIS cũng bao gồm một số cách triển khai bảo mật để bảo vệ giả mạo yêu cầu trên nhiều trang web (CSRF).
- Với HTML API và Trình tạo mã, tính năng xác thực GIS sẽ giảm bớt tiêu chuẩn tích hợp các bên dựa trên dữ liệu hơn nữa. Bạn không cần nhà phát triển JavaScript để tạo mã. Điều này làm giảm mức độ trải nghiệm OAuth cần thiết cũng như thời gian triển khai.
- Trải nghiệm người dùng uỷ quyền trên Hệ thống thông tin địa lý (GIS) hoàn toàn dựa trên Trải nghiệm người dùng OAuth. Tuy nhiên, thư viện JavaScript của GIS sẽ thêm một số hạn chế để tích hợp bên dựa trên dễ dàng hơn và an toàn hơn.
- GIS cũng cung cấp một số tính năng ngoài giao thức OAuth. Ví dụ: API này tích hợp API Trình quản lý thông tin xác thực mật khẩu và API Trình quản lý thông tin xác thực liên kết (sẽ sớm ra mắt).
Với Dịch vụ nhận dạng của Google, nhà phát triển có thể sử dụng một dịch vụ riêng và tích hợp để giúp người dùng đăng nhập vào trang web và ứng dụng của nhà phát triển bằng bất kỳ thông tin đăng nhập nào mà người dùng chọn. Sứ mệnh của GIS là hỗ trợ và đơn giản hoá trải nghiệm người dùng cho nhiều loại thông tin xác thực, nhằm hạ thấp thanh kỹ thuật cho việc tích hợp bên dựa trên dữ liệu.
Thời điểm xác thực và uỷ quyền riêng biệt
Để lấy mã truy cập để sử dụng với các API của Google hoặc để truy cập vào dữ liệu người dùng, bạn cần gọi API uỷ quyền Dịch vụ nhận dạng của Google. Đây là một API JavaScript riêng biệt, nhưng được đóng gói cùng với API xác thực.
Nếu trang web của bạn cần gọi cả API xác thực và API uỷ quyền, thì bạn cần gọi riêng các API đó tại các thời điểm khác nhau. Tại thời điểm xác thực, trang web của bạn có thể tích hợp tính năng Một lần chạm, tính năng tự động đăng nhập và nút Đăng nhập bằng Google để cho phép người dùng đăng nhập hoặc đăng ký trang web của bạn. Sau này, khi cần truy cập vào dữ liệu từ Google, bạn sẽ gọi API uỷ quyền để yêu cầu sự đồng ý và nhận mã truy cập để truy cập vào dữ liệu. Việc phân tách này tuân thủ phương pháp hay nhất về uỷ quyền gia tăng mà chúng tôi đề xuất, trong đó quyền được yêu cầu theo bối cảnh.
Để thực thi việc phân tách này, API xác thực chỉ có thể trả về mã thông báo mã nhận dạng dùng để đăng nhập vào trang web, trong khi API uỷ quyền chỉ có thể trả về mã hoặc mã truy cập chỉ dùng để truy cập vào dữ liệu mà không dùng để đăng nhập.
Nhờ có sự tách biệt này, người dùng có trải nghiệm xác thực nhất quán trên các trang web khác nhau. Điều này có thể làm tăng sự tin tưởng và mức sử dụng của người dùng, từ đó mang lại tỷ lệ chuyển đổi người dùng cao hơn trên trang web của bạn. Ngoài ra, do sự tách biệt này, Dịch vụ nhận dạng của Google giúp giảm mức độ trải nghiệm OAuth cần thiết và thời gian triển khai cho nhà phát triển xác thực.