Implementare l'autorizzazione OAuth 2.0

YouTube Data API supporta il protocollo OAuth 2.0 per autorizzare l'accesso ai dati utente privati. Nell'elenco che segue vengono spiegati alcuni concetti fondamentali di OAuth 2.0:

  • La prima volta che un utente tenta di utilizzare la funzionalità della tua applicazione che richiede l'accesso a Google Account or YouTube account, viene avviata la procedura di autorizzazione OAuth 2.0.

  • La tua applicazione indirizza l'utente al server di autorizzazione di Google. Il link a questa pagina specifica il scope di accesso che la tua applicazione richiede per l'account dell'utente. scope specifica le risorse che l'applicazione può recuperare, inserire, aggiornare o eliminare quando agisce come utente autenticato.

  • Se l'utente dà il consenso per autorizzare la tua applicazione ad accedere a tali risorse, Google restituisce un token alla tua applicazione. A seconda del tipo di applicazione, convalida il token o lo scambia con un tipo diverso di token.

    Ad esempio, un'applicazione web lato server scambia il token restituito con un token di accesso e un token di aggiornamento. Il token di accesso consente all'applicazione di autorizzare le richieste per conto dell'utente e il token di aggiornamento consente all'applicazione di recuperare un nuovo token di accesso alla scadenza del token di accesso originale.

Importante: è necessario ottenere le credenziali di autorizzazione in Google API Console per poter utilizzare l'autorizzazione OAuth 2.0.

Flussi OAuth 2.0

Le API di Google supportano diversi casi d'uso di OAuth 2.0:

  • Il flusso delle app web lato server supporta le applicazioni web che possono archiviare in modo sicuro informazioni permanenti.
  • Il flusso delle app web JavaScript supporta le applicazioni JavaScript in esecuzione in un browser.
  • Il flusso delle app mobile e desktop supporta le applicazioni installate su un dispositivo, ad esempio un telefono o un computer.
  • Il flusso di TV e dispositivi di input limitati supporta dispositivi con funzionalità di input limitate, come console per videogiochi e videocamere.
  • Il flusso OAuth 2.0 per l'account di servizio supporta le interazioni server-server che non accedono alle informazioni degli utenti. Tuttavia, YouTube Data API non supporta questo flusso. 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.