Внедрить авторизацию OAuth 2.0

YouTube Reporting API и YouTube Analytics API поддерживают протокол OAuth 2.0 для авторизации доступа к личным данным пользователей. Ниже приведены некоторые основные концепции OAuth 2.0 :

  • Когда пользователь впервые пытается использовать функции вашего приложения, требующие входа пользователя в Google Account or YouTube account , ваше приложение инициирует процесс авторизации OAuth 2.0 .

  • Ваше приложение направляет пользователя на сервер авторизации Google. Ссылка на эту страницу определяет scope доступа, запрашиваемую вашим приложением для учётной записи пользователя. scope определяет ресурсы, которые ваше приложение может извлекать, добавлять, обновлять или удалять, действуя от имени аутентифицированного пользователя.

  • Если пользователь соглашается предоставить вашему приложению доступ к этим ресурсам, Google возвращает вашему приложению токен. В зависимости от типа вашего приложения, он либо проверяет токен, либо обменивает его на токен другого типа.

    Например, серверное веб-приложение обменивает возвращаемый токен на токен доступа и токен обновления. Токен доступа позволяет приложению авторизовать запросы от имени пользователя, а токен обновления позволяет приложению получать новый токен доступа по истечении срока действия исходного токена доступа.

Важно: для использования авторизации OAuth 2.0 вам необходимо получить учетные данные авторизации в консоли API Google .

Более подробную информацию см. в Руководстве по авторизации OAuth 2.0 .

Потоки OAuth 2.0

API Google поддерживают несколько вариантов использования OAuth 2.0:

  • Поток веб-приложений на стороне сервера поддерживает веб-приложения, которые могут безопасно хранить постоянную информацию.
  • Поток веб-приложений JavaScript поддерживает приложения JavaScript, работающие в браузере.
  • Поток мобильных и настольных приложений поддерживает приложения, установленные на устройстве, например телефоне или компьютере.
  • Протокол OAuth 2.0 для телевизоров и устройств с ограниченными возможностями ввода поддерживает устройства с ограниченными возможностями ввода, такие как игровые консоли и видеокамеры. The YouTube Reporting and YouTube Analytics APIs do not currently support the OAuth 2.0 flow for devices.
  • Поток OAuth 2.0 для сервисного аккаунта поддерживает межсерверное взаимодействие без доступа к пользовательской информации. Однако YouTube Reporting API и YouTube Analytics API не поддерживают этот поток. 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.

Определить области доступа

Области действия позволяют вашему приложению запрашивать доступ только к тем ресурсам, которые ему необходимы, а также позволяют пользователям контролировать объём предоставляемого им доступа. Таким образом, между количеством запрашиваемых областей действия и вероятностью получения согласия пользователя может существовать обратная зависимость.

Прежде чем приступить к внедрению авторизации OAuth 2.0, мы рекомендуем вам определить области, на доступ к которым вашему приложению потребуется разрешение.

API YouTube Analytics использует следующие области действия:

范围 说明
https://www.googleapis.com/auth/youtube 管理您的 YouTube 账号
https://www.googleapis.com/auth/youtube.readonly 查看您的 YouTube 账号
https://www.googleapis.com/auth/youtubepartner 查看和管理您在 YouTube 上的资源和关联内容
https://www.googleapis.com/auth/yt-analytics-monetary.readonly 查看您的 YouTube 内容的财务类和非财务类 YouTube Analytics 报表
https://www.googleapis.com/auth/yt-analytics.readonly 查看 YouTube 分析工具为您的 YouTube 内容出具的报告

API отчетов YouTube использует следующие области действия:

范围 说明
https://www.googleapis.com/auth/yt-analytics-monetary.readonly 查看您的 YouTube 内容的财务类和非财务类 YouTube Analytics 报表
https://www.googleapis.com/auth/yt-analytics.readonly 查看 YouTube 分析工具为您的 YouTube 内容出具的报告

Документ «Области действия API OAuth 2.0» содержит полный список областей действия, которые можно использовать для доступа к API Google.