После прочтения документов Google API. Я знаю, что если создаваемому нами проекту требуется доступ к личным данным, мы должны использовать oauth. Но вот моя ситуация. мы откроем бизнес-аккаунт на Youtube, и мы создадим проект для загрузки видео в нашу собственную учетную запись, нам не нужно управлять учетной записью другого пользователя. Можем ли мы использовать API данных google youtube без OAuth?
Можем ли мы использовать API данных google youtube без OAuth
Ответы (1)
Есть два способа получить доступ к личным данным пользователя с помощью API Google.
- Проливной Oauth2. если у вас есть согласие спросить владельца учетной записи, можете ли вы получить к ней доступ
- Сервисные аккаунты, которые технически предварительно авторизованы разработчиком.
Обычно я бы сказал, поскольку вы получаете доступ только к одной учетной записи, которой владеете, используйте учетную запись службы. К сожалению, API YouTube не поддерживает аутентификацию сервисного аккаунта.
Из-за отсутствия поддержки сервисного аккаунта вам придется использовать Oauth2. Я делал это в прошлом.
Выполните аутентификацию вашего скрипта один раз, используя какой-либо серверный язык. Сервер аутентификации вернет вам токен обновления. Токены обновления можно использовать в любое время для получения нового токена доступа. Токены доступа используются для доступа к API Google и действительны только в течение часа. Сохраните этот токен обновления где-нибудь. После этого вы сможете разрешить доступ к рассматриваемой учетной записи YouTube, когда захотите.
Примечание. Вам придется его посмотреть. В редких случаях жетоны обновления могут стать недействительными. Я рекомендую подготовить сценарий, который позволит вам повторно аутентифицировать приложение, снова сохранив новый токен обновления. Такое случается редко, но лучше всего заранее спарить.
Игровая площадка Oauth
Отчасти суть Oauth заключается в том, что он идентифицирует ваше приложение в Google через создание вашего проекта в консоли разработчика Google. Такие вещи, как квота и доступ к контролируемым API. Если вы спамите API, они узнают и отключат вас. (никогда не видел, чтобы это происходило)
Когда вы запрашиваете доступ пользователя, оно появляется с названием проекта в консоли разработчика Google. Это определяется идентификатором клиента и секретом клиента для этого проекта в консоли разработчика Google. Когда я использую oauth игровую площадку, меня спрашивают: "Google OAuth 2.0 Playground хотела бы ..."
Таким образом, используя игровую площадку, вы используете идентификатор клиента Googles и секрет клиента, чтобы создать себе токен обновления. Если N других разработчиков также делают это, квота для YouTube может быть использована в течение дня. Также с точки зрения безопасности вы теперь предоставляете этому проекту доступ к своим данным. Игнорируйте это на секунду, что, если Google вдруг решит удалить, изменить идентификатор клиента или сгенерировать новый. Ваш токен обновления больше не будет работать. Что, если случайный разработчик X также использует его, и он начинает спамить все, а идентификатор клиента отключается (подумайте, это произошло в прошлом году), вам придется ждать, пока Google загрузит новый идентификатор клиента для того, который теперь был забанен.
Google OAuth 2.0 Playground может показаться неплохим, но это не для повседневного использования. ИМО, это хорошо для тестирования. Создайте свой собственный проект и получите собственный доступ, это несложно, просто требуется язык программирования, который может обрабатывать http Post.
Мой учебник Google 3 legged oauth2 flow