Triển khai uỷ quyền OAuth 2.0

YouTube Reporting APIYouTube Analytics API hỗ trợ giao thức OAuth 2.0 để cho phép truy cập vào dữ liệu người dùng riêng tư. Danh sách sau đây giải thích một số khái niệm cốt lõi về OAuth 2.0:

  • Khi người dùng lần đầu tiên cố gắng sử dụng các tính năng trong ứng dụng của bạn yêu cầu người dùng phải đăng nhập vào một Google Account or YouTube account, ứng dụng của bạn sẽ bắt đầu quy trình uỷ quyền OAuth 2.0.

  • Ứng dụng của bạn sẽ chuyển hướng người dùng đến máy chủ uỷ quyền của Google. Đường liên kết đến trang đó chỉ định scope truy cập mà ứng dụng của bạn đang yêu cầu cho tài khoản của người dùng. scope chỉ định các tài nguyên mà ứng dụng của bạn có thể truy xuất, chèn, cập nhật hoặc xoá khi đóng vai trò là người dùng đã xác thực.

  • Nếu người dùng đồng ý cho phép ứng dụng của bạn truy cập vào các tài nguyên đó, thì Google sẽ trả về một mã thông báo cho ứng dụng của bạn. Tuỳ thuộc vào loại ứng dụng, ứng dụng sẽ xác thực mã thông báo hoặc trao đổi mã thông báo đó để lấy một loại mã thông báo khác.

    Ví dụ: một ứng dụng web phía máy chủ sẽ trao đổi mã thông báo được trả về để lấy mã truy cập và mã làm mới. Mã truy cập cho phép ứng dụng uỷ quyền cho các yêu cầu thay mặt người dùng và mã làm mới cho phép ứng dụng truy xuất một mã truy cập mới khi mã truy cập ban đầu hết hạn.

Quan trọng: Để sử dụng tính năng Uỷ quyền OAuth 2.0, bạn cần phải lấy thông tin xác thực uỷ quyền trong Google API Console.

Để biết thêm thông tin chi tiết, hãy xem Hướng dẫn uỷ quyền OAuth 2.0.

Quy trình OAuth 2.0

API của Google hỗ trợ một số trường hợp sử dụng OAuth 2.0:

  • Quy trình ứng dụng web phía máy chủ hỗ trợ các ứng dụng web có thể lưu trữ thông tin liên tục một cách an toàn.
  • Quy trình ứng dụng web JavaScript hỗ trợ các ứng dụng JavaScript chạy trong trình duyệt.
  • Quy trình ứng dụng dành cho thiết bị di động và máy tính hỗ trợ các ứng dụng được cài đặt trên một thiết bị, chẳng hạn như điện thoại hoặc máy tính.
  • Quy trình OAuth 2.0 dành cho TV và thiết bị đầu vào giới hạn hỗ trợ các thiết bị có khả năng đầu vào hạn chế, chẳng hạn như máy chơi trò chơi và máy quay video. The YouTube Reporting and YouTube Analytics APIs do not currently support the OAuth 2.0 flow for devices.
  • Quy trình OAuth 2.0 dành cho tài khoản dịch vụ hỗ trợ các lượt tương tác giữa máy chủ với máy chủ mà không truy cập vào thông tin người dùng. Tuy nhiên, YouTube Reporting APIYouTube Analytics API không hỗ trợ quy trình này. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate an error.

Xác định phạm vi truy cập

Phạm vi cho phép ứng dụng của bạn chỉ yêu cầu quyền truy cập vào các tài nguyên mà ứng dụng cần, đồng thời cho phép người dùng kiểm soát mức độ truy cập mà họ cấp cho ứng dụng của bạn. Do đó, có thể có mối quan hệ nghịch đảo giữa số lượng phạm vi được yêu cầu và khả năng nhận được sự đồng ý của người dùng.

Trước khi bắt đầu triển khai tính năng uỷ quyền OAuth 2.0, bạn nên xác định các phạm vi mà ứng dụng của bạn cần có quyền truy cập.

YouTube Analytics API sử dụng các phạm vi sau:

Phạm vi Mô tả
https://www.googleapis.com/auth/youtube Quản lý tài khoản YouTube của bạn
https://www.googleapis.com/auth/youtube.readonly Xem tài khoản YouTube của bạn
https://www.googleapis.com/auth/youtubepartner Xem và quản lý tài sản cũng như nội dung được kết hợp của bạn trên YouTube
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Xem báo cáo của YouTube Analytics về tài chính và phi tài chính cho nội dung trên YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Xem báo cáo Analytics trên YouTube dành cho nội dung YouTube của bạn

API Báo cáo YouTube sử dụng các phạm vi sau:

Phạm vi Mô tả
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Xem báo cáo của YouTube Analytics về tài chính và phi tài chính cho nội dung trên YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Xem báo cáo Analytics trên YouTube dành cho nội dung YouTube của bạn

Tài liệu Phạm vi API OAuth 2.0 chứa danh sách đầy đủ các phạm vi mà bạn có thể sử dụng để truy cập vào các API của Google.