Mengimplementasikan Otorisasi OAuth 2.0

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

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

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

  • Jika pengguna memberikan izin kepada aplikasi Anda untuk mengakses resource tersebut, Google akan menampilkan token ke aplikasi Anda. Tergantung jenis aplikasi Anda, metode ini 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 mengizinkan permintaan atas nama pengguna, dan token refresh memungkinkan aplikasi mengambil token akses baru saat masa berlaku token akses asli berakhir.

Penting: Anda harus mendapatkan kredensial otorisasi di Konsol API Google agar dapat menggunakan otorisasi OAuth 2.0.

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 Data 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.