Mã nhận dạng giữa nhiều khách hàng

Khi xây dựng phần mềm, các nhà phát triển thường xuyên đưa vào các mô-đun chạy trên máy chủ web, các mô-đun khác chạy trong trình duyệt và các mô-đun khác chạy dưới dạng ứng dụng di động Android hoặc iOS. Cả nhà phát triển và những người dùng phần mềm của họ thường coi tất cả các mô-đun này là một phần của một ứng dụng duy nhất.

Việc triển khai OAuth 2.0 của Google hỗ trợ quan điểm này. Để sử dụng bất kỳ dịch vụ nào dựa trên OAuth2.0, bạn phải thiết lập phần mềm của mình trong Google API Console. Đơn vị tổ chức trong API Console là "dự án", có thể tương ứng với một ứng dụng có nhiều thành phần. Đối với mỗi dự án, bạn có thể cung cấp thông tin về thương hiệu và phải chỉ định những API mà ứng dụng sẽ truy cập. Mỗi thành phần của một ứng dụng có nhiều thành phần được xác định bằng một mã ứng dụng, một chuỗi duy nhất được tạo trong API Console.

Mục tiêu uỷ quyền trên nhiều ứng dụng

Khi một ứng dụng sử dụng OAuth 2.0 để uỷ quyền, ứng dụng đó sẽ thay mặt người dùng yêu cầu mã truy cập OAuth 2.0 để truy cập vào một tài nguyên mà ứng dụng xác định bằng một hoặc nhiều chuỗi phạm vi. Thông thường, người dùng sẽ được yêu cầu phê duyệt quyền truy cập.

Khi người dùng cấp quyền truy cập cho ứng dụng của bạn trong một phạm vi cụ thể, người dùng sẽ thấy màn hình đồng ý của người dùng, bao gồm cả hoạt động xây dựng thương hiệu sản phẩm ở cấp dự án mà bạn thiết lập trong Google API Console. Do đó, Google cho rằng khi người dùng đã cấp quyền truy cập vào một phạm vi cụ thể cho bất kỳ mã ứng dụng nào trong một dự án, thì việc cấp quyền đó cho thấy người dùng tin tưởng toàn bộ ứng dụng cho phạm vi đó.

Nhờ đó, người dùng sẽ không được nhắc phê duyệt quyền truy cập vào bất kỳ tài nguyên nào nhiều hơn một lần cho cùng một ứng dụng logic, bất cứ khi nào các thành phần của ứng dụng có thể được cơ sở hạ tầng uỷ quyền của Google xác thực một cách đáng tin cậy. Cơ sở hạ tầng này hiện bao gồm các ứng dụng web, ứng dụng Android, ứng dụng Chrome, ứng dụng iOS, ứng dụng dành cho máy tính và thiết bị có chế độ nhập liệu hạn chế.

Mã truy cập đa ứng dụng

Phần mềm có thể lấy mã truy cập OAuth 2.0 theo nhiều cách, tuỳ thuộc vào nền tảng mà mã đang chạy. Để biết thông tin chi tiết, hãy xem phần Sử dụng OAuth 2.0 để truy cập vào API Google. Thông thường, bạn phải có sự phê duyệt của người dùng khi cấp mã truy cập.

Rất may là cơ sở hạ tầng uỷ quyền của Google có thể sử dụng thông tin về sự phê duyệt của người dùng đối với một mã ứng dụng trong một dự án nhất định khi đánh giá xem có nên uỷ quyền cho những người khác trong cùng dự án hay không.

Điều này có nghĩa là nếu một ứng dụng Android yêu cầu mã truy cập cho một phạm vi cụ thể và người dùng yêu cầu đã phê duyệt một ứng dụng web trong cùng dự án cho cùng một phạm vi đó, thì người dùng sẽ không phải phê duyệt lại. Điều này hoạt động theo cả hai cách: nếu quyền truy cập vào một phạm vi đã được cấp trong ứng dụng Android của bạn, thì quyền truy cập đó sẽ không được yêu cầu lại từ một ứng dụng khác trong cùng dự án, chẳng hạn như một ứng dụng web.