Implementazione dell'autenticazione OAuth 2.0

Il YouTube Live Streaming API supporta il OAuth 2.0 protocollo per autorizzare l'accesso ai dati privati degli utenti. Di seguito sono riportati alcuni concetti di base OAuth 2.0:

  • Quando un utente tenta di utilizzare per la prima volta le funzionalità della tua applicazione che richiedono l'accesso a un Google Account or YouTube account, la tua applicazione avvia la procedura di autorizzazione OAuth 2.0.

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

  • Se l'utente acconsente ad autorizzare la tua applicazione ad accedere a queste risorse, Google restituisce un token alla tua applicazione. A seconda del tipo di applicazione, questa convalida il token o lo scambia con un altro tipo 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, mentre il token di aggiornamento consente all'applicazione di recuperare un nuovo token di accesso alla scadenza del token di accesso originale.

Importante: per utilizzare l'autorizzazione OAuth 2.0, devi ottenere le credenziali di autorizzazione nella console Google Cloud.

Per maggiori dettagli, consulta la Guida all'autorizzazione OAuth 2.0.

Nota: un canale deve essere approvato per utilizzare la funzionalità YouTube Live, che consente al proprietario del canale di trasmettere contenuti live sul canale. Se invii richieste API per conto di un utente autenticato il cui canale non è abilitato o idoneo a trasmettere contenuti live, l'API restituirà un errore insufficientPermissions.

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 persistenti.
  • Il flusso delle app web JavaScript supporta le applicazioni JavaScript in esecuzione in un browser.
  • Il flusso delle app per dispositivi mobili e desktop supporta le applicazioni installate su un dispositivo, ad esempio uno smartphone o un computer.
  • Il flusso di TV e dispositivi di input limitato supporta i dispositivi con funzionalità di input limitate, come console per videogiochi e videocamere.
  • Il flusso OAuth 2.0 per il flusso dei service account supporta le interazioni server-server che non accedono alle informazioni degli utenti. Tuttavia, il YouTube Live Streaming 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.