Como implementar a autorização do OAuth 2.0

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 do OAuth 2.0:

  • Quando um usuário tenta usar a funcionalidade em um app que exige login em uma Google Account or YouTube account, o app 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. O scope 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:você precisa receber credenciais de autorização no Console de APIs do Google para usar a autorização do OAuth 2.0.

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 apps da Web que armazenam informações persistentes com segurança.
  • O fluxo de apps JavaScript da Web é compatível com aplicativos JavaScript executados em um navegador.
  • O fluxo de apps para dispositivos móveis e computadores é compatível com apps 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 do OAuth 2.0 para a conta de serviço é compatível com interações de servidor para servidor que não acessam 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.