YouTube Data API поддерживает протокол OAuth 2.0 для авторизации доступа к личным данным пользователей. Ниже приведены основные понятия, связанные с OAuth 2.0.
-
Когда пользователь впервые пытается использовать функции приложения, требующие входа в Google Account or YouTube account, приложение запускает процесс авторизации OAuth 2.0.
-
Приложение перенаправляет пользователя на сервер авторизации Google. Ссылка на эту страницу указывает
scopeдоступа, который ваше приложение запрашивает для аккаунта пользователя. Параметрscopeуказывает ресурсы, которые ваше приложение может получать, вставлять, обновлять или удалять, действуя от имени аутентифицированного пользователя. -
Если пользователь разрешает приложению доступ к этим ресурсам, Google возвращает приложению токен. В зависимости от типа приложения оно либо проверяет токен, либо обменивает его на токен другого типа.
Например, веб-приложение на стороне сервера обменивает возвращенный токен на токен доступа и токен обновления. Токен доступа позволяет приложению авторизовать запросы от имени пользователя, а токен обновления – получить новый токен доступа, когда срок действия исходного истечет.
Важно! Чтобы использовать авторизацию OAuth 2.0, необходимо получить учетные данные для авторизации в консоли Google Cloud.
Подробную информацию можно найти в руководстве по авторизации OAuth 2.0.
Процессы OAuth 2.0
API Google поддерживают несколько вариантов использования OAuth 2.0:
- Процесс для веб-приложений на стороне сервера поддерживает веб-приложения, которые могут безопасно хранить постоянную информацию.
- Поток веб-приложений JavaScript поддерживает приложения JavaScript, работающие в браузере.
- Схема для мобильных и компьютерных приложений поддерживает приложения, установленные на устройстве, например на телефоне или компьютере.
- Процесс Телевизоры и устройства с ограниченными возможностями ввода поддерживает устройства с ограниченными возможностями ввода, такие как игровые консоли и видеокамеры.
- Процесс сервисного аккаунта поддерживает межсерверное взаимодействие, при котором не запрашивается доступ к информации пользователей.