Ringkasan

Penautan akun memungkinkan pemegang Akun Google terhubung ke layanan Anda dengan cepat, lancar, dan aman. Anda dapat memilih untuk menerapkan Penautan Akun Google untuk membagikan data pengguna dari platform Anda ke aplikasi dan layanan Google.

Protokol OAuth 2.0 yang aman memungkinkan Anda menautkan Akun Google pengguna dengan aman ke akunnya di platform Anda, sehingga memberikan akses ke layanan Anda kepada aplikasi dan perangkat Google.

Pengguna dapat menautkan atau membatalkan tautan akun dan membuat akun baru di platform Anda secara opsional dengan Penautan Akun Google.

Kasus penggunaan

Beberapa alasan penerapan Penautan Akun Google adalah:

  • Bagikan data pengguna dari platform Anda dengan aplikasi dan layanan Google.

  • Putar konten video dan film Anda menggunakan Google TV.

  • Mengelola dan mengontrol perangkat yang terhubung ke Google Smart Home menggunakan aplikasi Google Home dan Asisten Google, "Ok Google nyalakan lampu".

  • Buat pengalaman dan fungsi Asisten Google yang disesuaikan pengguna dengan Action Percakapan, "Ok Google, pesan seperti biasa dari Starbucks".

  • Memungkinkan pengguna mendapatkan reward dengan melihat live stream yang memenuhi syarat di YouTube setelah menautkan Akun Google mereka ke akun partner reward.

  • Isi akun baru selama pendaftaran dengan data yang dibagikan secara konsensual dari profil Akun Google.

Fitur yang didukung

Fitur-fitur ini didukung oleh Penautan Akun Google:

  • Bagikan data Anda dengan cepat dan mudah menggunakan alur implisit Penautan OAuth.

  • Tingkatkan keamanan dengan alur Kode otorisasi Penautan OAuth.

  • Buat pengguna lama login atau daftarkan pengguna baru yang diverifikasi Google ke platform Anda, dapatkan izin mereka, dan bagikan data secara aman dengan Penautan yang ringkas.

  • Kurangi hambatan dengan Flip Aplikasi. Dari aplikasi Google tepercaya, ketuk sekali akan membuka aplikasi Android atau iOS terverifikasi Anda dengan aman, dan sekali ketuk akan memberi pengguna izin dan menautkan akun.

  • Meningkatkan privasi pengguna dengan menentukan cakupan kustom agar hanya berbagi data yang diperlukan, meningkatkan kepercayaan pengguna dengan menetapkan cara penggunaan data mereka dengan jelas.

  • Akses ke data dan layanan yang dihosting di platform Anda dapat dicabut dengan membatalkan tautan akun. Menerapkan endpoint pencabutan token opsional memungkinkan Anda tetap sinkron dengan peristiwa yang dimulai Google, sementara Perlindungan Lintas Akun (RISC) memungkinkan Anda memberi tahu Google tentang peristiwa pembatalan tautan yang terjadi di platform Anda.

Alur penautan akun

Terdapat 3 alur Penautan Akun Google yang semuanya berbasis OAuth dan mengharuskan Anda mengelola atau mengontrol endpoint pertukaran token dan otorisasi yang sesuai dengan OAuth 2.0.

Selama proses penautan, Anda dapat mengirimkan token akses ke Google untuk Akun Google perorangan setelah mendapatkan izin dari pemegang akun untuk menautkan akunnya dan membagikan data.

Penautan OAuth ('OAuth Web')

Ini adalah alur OAuth dasar yang mengarahkan pengguna ke situs Anda untuk melakukan penautan. Pengguna dialihkan ke situs Anda untuk login ke akunnya. Setelah login, pengguna setuju untuk membagikan data mereka di layanan Anda dengan Google. Pada saat itu, Akun Google pengguna dan layanan Anda akan ditautkan.

Penautan OAuth mendukung kode otorisasi dan alur OAuth implisit. Layanan Anda harus menghosting endpoint otorisasi yang mematuhi OAuth 2.0 untuk alur implisit, dan harus mengekspos endpoint pertukaran token otorisasi dan otorisasi saat menggunakan alur kode otorisasi.

Gambar 1. Penautan Akun di ponsel pengguna dengan OAuth Web

Penautan Aplikasi Berbasis OAuth ('Flip Aplikasi')

Alur OAuth yang mengarahkan pengguna ke aplikasi Anda untuk penautan.

Penautan Aplikasi Flip berbasis OAuth memandu pengguna saat mereka berpindah antara aplikasi seluler Android atau iOS yang terverifikasi dan platform Google untuk meninjau perubahan akses data yang diusulkan dan memberikan izin untuk menautkan akun mereka di platform Anda dengan Akun Google mereka. Untuk mengaktifkan Balik Aplikasi, layanan Anda harus mendukung Penautan OAuth atau Penautan Login dengan Google berbasis OAuth menggunakan alur kode otorisasi.

App Flip didukung untuk Android dan iOS.

Cara kerjanya:

Aplikasi Google memeriksa apakah aplikasi Anda diinstal di perangkat pengguna:

  • Jika aplikasi ditemukan, pengguna akan 'dilipat' ke aplikasi Anda. Aplikasi Anda akan mengumpulkan izin dari pengguna untuk menautkan akun dengan Google, lalu 'membalik kembali' ke platform Google.
  • Jika aplikasi tidak ditemukan atau terjadi error selama proses penautan aplikasi, pengguna akan dialihkan ke alur OAuth atau OAuth Web yang disederhanakan.

Gambar 2. Penautan Akun di ponsel pengguna dengan App Flip

Penautan yang Berbasis OAuth ('Selaras')

Penautan Login dengan Google yang berbasis OAuth menambahkan Login dengan Google di atas penautan OAuth, yang memungkinkan pengguna menyelesaikan proses penautan tanpa meninggalkan platform Google, sehingga mengurangi hambatan dan pengguna yang tidak menyelesaikan survei. Penautan yang Menyederhanakan Berbasis OAuth menawarkan pengalaman pengguna terbaik melalui login yang lancar, pembuatan akun, dan penautan akun dengan menggabungkan Login dengan Google dengan penautan OAuth. Layanan Anda harus mendukung endpoint pertukaran token dan otorisasi yang mematuhi OAuth 2.0. Selain itu, endpoint pertukaran token harus mendukung pernyataan Token Web JSON (JWT) dan menerapkan intent check, create, dan get.

Cara kerjanya:

Google menegaskan akun pengguna dan meneruskan informasi ini kepada Anda:

  • Jika akun ada untuk pengguna di database Anda, pengguna tersebut berhasil menautkan Akun Google-nya dengan akunnya di layanan Anda.
  • jika tidak ada akun untuk pengguna di database Anda, pengguna dapat membuat akun 3P baru dengan informasi tegas yang diberikan Google: email, nama, dan foto profil, atau memilih untuk login dan menautkan dengan email lain (ini akan mewajibkan mereka login ke layanan Anda melalui OAuth Web).

Gambar 3. Penautan Akun di ponsel pengguna dengan Penautan yang Disederhanakan

Alur mana yang harus Anda gunakan?

Sebaiknya terapkan semua alur untuk memastikan pengguna mendapatkan pengalaman penautan terbaik. Alur Beralih Aplikasi dan yang Dipermudah mengurangi hambatan penautan karena pengguna dapat menyelesaikan proses penautan dalam waktu yang sangat singkat. Penautan OAuth Web memiliki tingkat upaya terendah dan merupakan tempat yang baik untuk memulai setelah Anda dapat menambahkan pada alur penautan lainnya.

Bekerja dengan token

Penautan Akun Google didasarkan pada standar industri OAuth 2.0.

Anda memberikan token akses ke Google untuk Akun Google perorangan setelah mendapatkan izin pemegang akun untuk menautkan akun mereka dan berbagi data.

Jenis token

OAuth 2.0 menggunakan string yang disebut token untuk berkomunikasi antara agen pengguna, aplikasi klien, dan server OAuth 2.0.

Tiga jenis token OAuth 2.0 dapat digunakan selama penautan akun:

  • Kode otorisasi . Token berumur pendek yang dapat ditukar dengan akses dan token penyegaran. Untuk tujuan keamanan, Google memanggil titik akhir otorisasi Anda untuk mendapatkan kode sekali pakai atau berumur sangat pendek.

  • Token akses . Token yang memberikan akses pembawa ke sumber daya. Untuk membatasi eksposur yang dapat diakibatkan oleh hilangnya token ini, token ini memiliki masa hidup terbatas, biasanya kedaluwarsa setelah sekitar satu jam.

  • Segarkan token . Token berumur panjang yang dapat ditukar dengan token akses baru ketika token akses kedaluwarsa. Saat layanan Anda terintegrasi dengan Google, token ini disimpan dan digunakan secara eksklusif oleh Google. Google memanggil titik akhir pertukaran token Anda untuk menukar token penyegaran dengan token akses, yang pada gilirannya digunakan untuk mengakses data pengguna.

Penanganan token

Kondisi balapan di lingkungan berkerumun dan pertukaran klien-server dapat mengakibatkan skenario waktu yang kompleks dan penanganan kesalahan saat bekerja dengan token. Sebagai contoh:

  • Anda menerima permintaan untuk token akses baru, dan Anda mengeluarkan token akses baru. Secara bersamaan, Anda menerima permintaan untuk akses ke sumber daya layanan Anda menggunakan token akses yang sebelumnya tidak kedaluwarsa.
  • Balasan refresh token Anda belum diterima (atau tidak pernah diterima) oleh Google. Sementara itu, token penyegaran yang sebelumnya valid digunakan dalam permintaan dari Google.

Permintaan dan balasan dapat tiba dalam urutan apa pun, atau tidak sama sekali karena layanan asinkron yang berjalan di cluster, perilaku jaringan, atau cara lain.

Status bersama yang langsung dan sepenuhnya konsisten baik di dalam, dan di antara, sistem penanganan token Anda dan Google tidak dapat dijamin. Beberapa token yang valid dan tidak kedaluwarsa dapat hidup berdampingan di dalam atau di seluruh sistem dalam waktu singkat. Untuk meminimalkan dampak negatif pengguna, kami menyarankan Anda melakukan hal berikut:

  • Terima token akses yang tidak kedaluwarsa, bahkan setelah token yang lebih baru diterbitkan.
  • Gunakan alternatif selain Refresh Token Rotation .
  • Mendukung beberapa akses yang valid secara bersamaan dan token penyegaran. Demi keamanan, Anda harus membatasi jumlah token dan masa pakai token.
Perawatan dan penanganan pemadaman

Selama pemeliharaan atau pemadaman yang tidak direncanakan, Google mungkin tidak dapat menghubungi otorisasi atau titik akhir pertukaran token Anda untuk mendapatkan akses dan menyegarkan token.

Titik akhir Anda harus merespons dengan kode kesalahan 503 dan isi kosong. Dalam kasus ini, Google mencoba kembali permintaan pertukaran token yang gagal untuk waktu yang terbatas. Asalkan Google nantinya bisa mendapatkan token penyegaran dan akses, permintaan yang gagal tidak akan terlihat oleh pengguna.

Permintaan yang gagal untuk token akses menghasilkan kesalahan yang terlihat, jika dimulai oleh pengguna. Pengguna akan diminta untuk mencoba kembali kegagalan penautan jika alur OAuth 2.0 implisit digunakan.

Rekomendasi

Ada banyak solusi untuk meminimalkan dampak pemeliharaan. Beberapa opsi untuk dipertimbangkan:

  • Pertahankan layanan Anda yang ada dan rutekan sejumlah permintaan terbatas ke layanan yang baru diperbarui. Migrasikan semua permintaan hanya setelah mengonfirmasi fungsi yang diharapkan.

  • Kurangi jumlah permintaan token selama periode pemeliharaan:

    • Batasi periode pemeliharaan hingga kurang dari masa pakai token akses.

    • Tingkatkan masa pakai token akses untuk sementara:

      1. Tingkatkan masa pakai token menjadi lebih lama dari periode pemeliharaan.
      2. Tunggu dua kali durasi token akses Anda seumur hidup, memungkinkan pengguna untuk menukar token berumur pendek dengan token berdurasi lebih lama.
      3. Masuk pemeliharaan.
      4. Tanggapi permintaan token dengan kode kesalahan 503 dan isi kosong.
      5. Keluar dari perawatan.
      6. Kurangi masa pakai token kembali normal.

Mendaftar ke Google

Kami memerlukan detail penyiapan OAuth 2.0 Anda dan membagikan kredensial untuk mengaktifkan penautan akun. Lihat pendaftaran untuk mengetahui detailnya.