Login Google
Login Google bersifat opsional. Tanpa ini, semua orang tetap bisa masuk dengan email dan password. Dengan Google, admin bisa mengundang staf lewat email tanpa membagikan password.
Aplikasi hanya meminta akses dasar (openid email profile), jadi tidak perlu verifikasi aplikasi dari Google.
-
Buat project. Buka console.cloud.google.com, pilih pemilih project di atas, lalu New Project (nama bebas, mis. “Absensi Sholat”).
-
Atur OAuth consent screen. Buka APIs & Services > OAuth consent screen (di tampilan baru bernama Google Auth Platform), klik Get started. Isi nama aplikasi, email dukungan, dan pilih User type: External. Isi email kontak lalu simpan.
-
Publish aplikasi. Di Audience, klik Publish app supaya statusnya In production. Kalau dibiarkan Testing, hanya email yang didaftarkan sebagai Test users yang bisa login, dan sesinya kedaluwarsa dalam 7 hari.
-
Buat OAuth Client ID. Buka APIs & Services > Credentials > Create credentials > OAuth client ID. Pilih Application type: Web application.
-
Isi Authorized redirect URIs (ganti
DOMAINdengan domain aplikasi):https://DOMAIN/api/v1/auth/google/callbackhttp://localhost:3000/api/v1/auth/google/callbackAlamatnya harus sama persis:
https, tanpa slash di akhir, dan tanpawwwkalau aplikasi tidak memakaiwww. -
Klik Create, lalu salin Client ID dan Client secret.
-
Isi environment di hosting dan
.envlokal:Terminal window APP_URL=https://DOMAINGOOGLE_CLIENT_ID=xxxx.apps.googleusercontent.comGOOGLE_CLIENT_SECRET=xxxxAPP_URLharus sama dengan domain di redirect URI. Setelah mengubah environment, deploy ulang supaya terbaca. -
Tes. Masuk sebagai admin, buka Staf > Undang lewat email, masukkan email Gmail Anda sendiri, lalu buka tautan undangannya. Login Google harus berhasil dan akun staf otomatis terhubung.
Kalau bermasalah
Section titled “Kalau bermasalah”| Pesan | Penyebab | Solusi |
|---|---|---|
redirect_uri_mismatch |
Redirect URI di Google tidak sama persis dengan APP_URL + /api/v1/auth/google/callback. |
Samakan, lalu tunggu beberapa menit sampai perubahan di Google aktif. |
Access blocked / app not verified |
Aplikasi masih mode Testing dan email belum jadi Test user. | Publish app (langkah 3). |
| “Login Google belum diaktifkan di aplikasi ini.” | GOOGLE_CLIENT_ID atau GOOGLE_CLIENT_SECRET kosong. |
Isi lalu deploy ulang. |
| “Akun Google yang dipakai harus berupa email yang diundang.” | Penerima memilih akun Google dengan email lain. | Pilih akun Google dengan email yang diundang. |
Designed & Developed by NoxlyDev