O YouTube Data API é compatível com o protocolo OAuth 2.0 para autorizar o acesso a dados particulares do usuário. A lista abaixo explica alguns dos principais conceitos de OAuth 2.0:
-
Na primeira tentativa de uso da funcionalidade no aplicativo que exige que o usuário faça login em um Google Account or YouTube account, o aplicativo inicia o processo de autorização OAuth 2.0.
-
Seu aplicativo redireciona o usuário ao servidor de autorização do Google. O link para essa página especifica o
scope
de acesso que seu aplicativo está solicitando para a conta do usuário. Oscope
especifica os recursos que o aplicativo pode recuperar, inserir, atualizar ou excluir ao agir como usuário autenticado. -
Se o usuário consentir em autorizar seu aplicativo para acessar os recursos, o Google retorna um token a seu aplicativo. Dependendo do tipo do aplicativo, ele valida ou token ou troca-o por um tipo de token diferente.
Por exemplo, um aplicativoda Web do lado do servidor troca o token retornado por um token de acesso e um token de atualização. Com o token de acesso, o aplicativo pode autorizar solicitações em nome do usuário. Já o token de atualização permite que o aplicativo recupere um novo token de acesso quando o token de acesso original expirar.
Importante:para usar a autorização do OAuth 2.0, você precisa conseguir as credenciais de autorização no Console de APIs do Google.
Fluxos do OAuth 2.0
As APIs do Google são compatíveis com vários casos de uso do OAuth 2.0:
- O fluxo de apps da Web do lado do servidor é compatível com aplicativos da Web que podem armazenar informações persistentes com segurança.
- O fluxo de apps da Web JavaScript é compatível com aplicativos JavaScript em execução em um navegador.
- O fluxo de apps para dispositivos móveis e computador oferece suporte a aplicativos instalados em um dispositivo, como um smartphone ou computador.
- O fluxo de TVs e dispositivos de entrada limitada é compatível com dispositivos com recursos de entrada limitados, como consoles de jogos e câmeras de vídeo.
- O fluxo OAuth 2.0 para o fluxo da conta de serviço oferece suporte a interações de servidor para servidor que não acessam as informações do usuário.
No entanto, o YouTube Data API não é compatível com esse fluxo.
Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a
NoLinkedYouTubeAccount
error.