2 poin oleh kibua20 2020-07-12 | 2 komentar | Bagikan ke WhatsApp

Menjelaskan metode autentikasi Service Account menggunakan JWT (JSON Web Token) di antara cara-cara yang telah memperoleh autentikasi OAuth 2.0 untuk menggunakan Google API, serta cara mengambil calendar event akun pengguna melalui Google Calendar API.

Untuk menggunakan Service Account, prosesnya harus dilakukan dalam 5 langkah berikut.

  1. Membuat Service Account di Google API console:

    • Saat Service Account dibuat, Anda akan mendapatkan Client ID dan Private Key.

2, Membuat JWT (Json Web Token):

  • Header, Claim set, dan signature di-encode menjadi nilai base64urlsafe.

  • Jika menggunakan Python, Anda dapat membuat string JWT dengan PyJWT.

  1. Meminta Token ke server autentikasi Google menggunakan JWT.

  2. Server Google mengembalikan Access Token sebagai response.

  3. Memanggil Google API menggunakan Access Token.

Hal yang perlu diperhatikan pada Google Calendar API adalah karena akun pengguna dan akun layanan merupakan akun yang terpisah, Anda harus menambahkan izin berbagi untuk Service Account di Google Calendar milik akun pengguna. Pemanggilan Google Calendar API dapat dilakukan menggunakan perintah curl atau python requests.

2 komentar

 
galadbran 2020-07-13

Hmm.. kalau ingin menerapkannya ke layanan nyata, sepertinya perlu membuat UX agar pengguna bisa membagikan kalendernya, tapi apakah itu memungkinkan ya?

 
kibua20 2020-07-13

Karena kalender harus dibagikan dari akun pengguna, sepertinya oautho2 client lebih tepat daripada JWT.

Berikut contoh Gmail yang diimplementasikan dengan oautho2.

https://kibua20.tistory.com/m/70