Các ứng dụng web phải lấy mã truy cập để gọi API của Google một cách an toàn.
Thư viện JavaScript Dịch vụ nhận dạng của Google hỗ trợ cả việc xác thực để người dùng đăng nhập và uỷ quyền để lấy mã truy cập dùng với các API của Google. Thư viện này chỉ dành cho mục đích sử dụng trong trình duyệt.
Xác thực là quá trình xác định danh tính của một người và thường được gọi là đăng ký hoặc đăng nhập của người dùng. Uỷ quyền là quá trình cấp hoặc từ chối quyền truy cập vào dữ liệu hoặc tài nguyên. Điều này bao gồm việc lấy và quản lý sự đồng ý của người dùng, giới hạn lượng dữ liệu hoặc tài nguyên được chia sẻ với các phạm vi và truy xuất mã thông báo truy cập để sử dụng với các API của Google.
Các hướng dẫn này đề cập đến các chủ đề về việc uỷ quyền và chia sẻ dữ liệu.
Cách hoạt động của quy trình uỷ quyền người dùng mô tả chi tiết từng bước uỷ quyền người dùng và bao gồm các ví dụ về hộp thoại người dùng.
Nếu bạn đang tìm kiếm thông tin trợ giúp về quy trình xác thực và cách triển khai quy trình đăng ký và đăng nhập của người dùng, hãy xem phần Đăng nhập bằng Google.
Thư viện này không dùng cho các khung JavaScript phía máy chủ, chẳng hạn như Node.js. Thay vào đó, hãy dùng thư viện ứng dụng Node.js của Google.
Những điểm thay đổi
Đối với người dùng, thư viện Dịch vụ nhận dạng của Google mang đến nhiều điểm cải thiện về khả năng sử dụng so với các thư viện JavaScript trước đây, bao gồm:
- Quy trình xác thực để đăng nhập và uỷ quyền cho người dùng nhằm lấy mã truy cập để gọi API Google hiện có 2 quy trình riêng biệt và khác biệt cho người dùng; một quy trình để đăng nhập và một quy trình khác để đồng ý trong quá trình uỷ quyền, với các quy trình riêng biệt cho người dùng để phân biệt rõ ràng danh tính của bạn với những việc mà ứng dụng có thể làm.
- Cải thiện khả năng hiển thị và quyền kiểm soát chi tiết đối với việc chia sẻ dữ liệu trong quá trình sự đồng ý của người dùng.
- Hộp thoại dựa trên trình duyệt để giảm sự bất tiện và không yêu cầu người dùng rời khỏi trang web của bạn để:
- lấy mã truy cập từ Google, hoặc
- gửi mã uỷ quyền đến nền tảng phụ trợ của bạn.
Đối với nhà phát triển, trọng tâm của chúng tôi là giảm độ phức tạp, cải thiện tính bảo mật và đơn giản hoá quy trình tích hợp. Sau đây là một số thay đổi:
- Xác thực người dùng để đăng nhập và uỷ quyền dùng để lấy mã truy cập nhằm gọi các API của Google là hai tập hợp riêng biệt và khác biệt gồm các đối tượng và phương thức JavaScript. Điều này giúp giảm độ phức tạp và lượng thông tin chi tiết cần thiết để triển khai quy trình xác thực hoặc uỷ quyền.
- Giờ đây, một thư viện JavaScript duy nhất hỗ trợ cả:
- Luồng cấp quyền trực tiếp OAuth 2.0, được dùng để lấy mã truy cập để sử dụng trong trình duyệt
- Quy trình sử dụng mã uỷ quyền OAuth 2.0 (còn gọi là quyền truy cập ngoại tuyến) sẽ bắt đầu gửi mã uỷ quyền một cách an toàn đến nền tảng phụ trợ của bạn, nơi mã này có thể được trao đổi để lấy mã truy cập và mã làm mới. Trước đây, bạn chỉ có thể sử dụng các quy trình này bằng cách dùng nhiều thư viện và thông qua các lệnh gọi trực tiếp đến các điểm cuối OAuth 2.0. Một thư viện duy nhất sẽ giúp bạn giảm thời gian và công sức tích hợp, thay vì phải tìm hiểu và đưa vào nhiều thư viện cũng như các khái niệm về OAuth 2.0, bạn có thể tập trung vào một giao diện duy nhất và hợp nhất.
- Đã xoá gián tiếp thông qua các hàm kiểu getter để đơn giản hoá và tăng khả năng đọc.
- Khi xử lý các phản hồi uỷ quyền, bạn có thể chọn sử dụng hoặc không sử dụng Promise để thực hiện các yêu cầu, thay vì để hệ thống đưa ra quyết định cho bạn.
- Thư viện ứng dụng API của Google cho JavaScript đã được cập nhật với những thay đổi sau:
- mô-đun
gapi.auth2và các đối tượng cũng như phương thức liên kết không còn được tự động tải cho bạn ở chế độ nền nữa, mà đã được thay thế bằng các đối tượng và phương thức rõ ràng hơn của thư viện Dịch vụ nhận dạng của Google. - Đã xoá tính năng tự động làm mới mã truy cập đã hết hạn để cải thiện tính bảo mật và nhận thức của người dùng. Sau khi mã truy cập hết hạn, ứng dụng của bạn phải xử lý các phản hồi lỗi, yêu cầu và nhận mã truy cập mới, hợp lệ của Google API.
- Để hỗ trợ việc tách biệt rõ ràng các thời điểm xác thực và uỷ quyền, việc đồng thời đăng nhập người dùng vào ứng dụng của bạn và vào Tài khoản Google của họ trong khi cũng phát hành mã truy cập không còn được hỗ trợ nữa. Trước đây, việc yêu cầu mã truy cập cũng giúp người dùng đăng nhập vào Tài khoản Google của họ và trả về thông tin đăng nhập mã thông báo JWT để xác thực người dùng.
- mô-đun
- Để tăng cường tính bảo mật và quyền riêng tư của người dùng, mỗi thông tin đăng nhập được cấp cho người dùng để uỷ quyền đều tuân theo nguyên tắc đặc quyền tối thiểu bằng cách chỉ bao gồm mã truy cập và thông tin cần thiết để quản lý mã truy cập đó.