Mengimplementasikan Autentikasi OAuth 2.0

YouTube Live Streaming API mendukung protokol OAuth 2.0 untuk mengizinkan akses ke data pribadi pengguna. Daftar di bawah ini menjelaskan beberapa konsep inti OAuth 2.0:

  • Saat pengguna pertama kali mencoba menggunakan fungsi di aplikasi yang mengharuskan pengguna untuk login ke Google Account or YouTube account, aplikasi Anda akan memulai proses otorisasi OAuth 2.0.

  • Aplikasi Anda mengarahkan pengguna ke server otorisasi Google. Link ke halaman tersebut menentukan scope akses yang diminta aplikasi Anda untuk akun pengguna. scope menentukan resource yang dapat diambil, disisipkan, diperbarui, atau dihapus aplikasi Anda saat bertindak sebagai pengguna terautentikasi.

  • Jika pengguna setuju untuk mengizinkan aplikasi Anda mengakses resource tersebut, Google akan menampilkan token ke aplikasi Anda. Bergantung pada jenis aplikasi Anda, aplikasi akan memvalidasi token atau menukarnya dengan jenis token yang berbeda.

    Misalnya, aplikasi web sisi server menukar token yang ditampilkan dengan token akses dan token refresh. Token akses memungkinkan aplikasi mengotorisasi permintaan atas nama pengguna, dan token pembaruan memungkinkan aplikasi mengambil token akses baru ketika token akses asli berakhir masa berlakunya.

Penting: Untuk menggunakan Otorisasi OAuth 2.0, Anda harus mendapatkan kredensial otorisasi di Konsol API Google.

Catatan: Channel harus disetujui agar dapat menggunakan YouTube Live agar pemilik channel dapat melakukan streaming konten live ke channel tersebut. Jika Anda mengirim API permintaan atas nama pengguna terautentikasi yang channelnya tidak diaktifkan atau memenuhi syarat untuk melakukan streaming konten live, API akan menampilkan error insufficientPermissions.

Alur OAuth 2.0

Google API mendukung beberapa kasus penggunaan OAuth 2.0:

  • Alur aplikasi web sisi server mendukung aplikasi web yang dapat menyimpan informasi persisten dengan aman.
  • Alur aplikasi web JavaScript mendukung aplikasi JavaScript yang berjalan di browser.
  • Alur aplikasi seluler dan desktop mendukung aplikasi yang diinstal di perangkat, seperti ponsel atau komputer.
  • Alur TV dan perangkat input terbatas mendukung perangkat dengan kemampuan input terbatas, seperti konsol game dan kamera video.
  • Alur OAuth 2.0 untuk alur akun layanan mendukung interaksi server-ke-server yang tidak mengakses informasi pengguna. Namun, YouTube Live Streaming API tidak mendukung alur ini. 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.