Menerapkan Otorisasi OAuth 2.0

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

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.