Google Apps Script: Pilih Google Login atau Custom Login (Search Sheet)?

Saat membangun aplikasi web dengan Google Apps Script, keputusan paling krusial adalah menentukan bagaimana pengguna masuk ke sistem. Pilihan ini akan menentukan apakah Anda harus membagikan file Google Sheet Anda atau tetap menjaganya tetap privat.

Berikut adalah perbandingan mendalam antara metode Google Login (Native) dan Search Sheet Login (Custom).

1. Metode Google Login (Native Auth)

Metode ini menggunakan identitas resmi Google melalui fungsi Session.getActiveUser().getEmail().

  • Cara Kerja: Skrip meminta izin kepada Google untuk mengambil alamat email pengguna yang sedang membuka browser.

  • Konfigurasi Deployment:

    • Execute as: User accessing the web app.

    • Who has access: Anyone with a Google account.

  • Kelebihan:

    • Sangat Aman: Mengikuti standar keamanan Google (termasuk 2FA jika aktif).

    • Tanpa Password: User tidak perlu membuat password baru.

  • Kekurangan:

    • Wajib Share File: Anda harus membagikan akses “Editor” atau “Viewer” pada file Google Sheet sumber kepada semua email pengguna. Jika tidak, mereka akan terkena error “Izin Ditolak”.

    • Privasi Terbatas: Pengguna yang jeli bisa membuka file Google Sheet asli Anda melalui folder “Shared with me” di Google Drive mereka.

2. Metode Search Sheet Login (Custom Auth)

Metode ini tidak peduli siapa yang login di browser. Sistem hanya mencocokkan input teks (Email/Username & Password) yang diketik user ke dalam tabel di Google Sheet.

  • Cara Kerja: Skrip berjalan menggunakan identitas Anda (Developer) untuk mencari data di Sheet tertutup.

  • Konfigurasi Deployment:

    • Execute as: Me (Email Anda).

    • Who has access: Anyone (Bahkan tanpa akun Google bisa akses).

  • Kelebihan:

    • Data Privat: Google Sheet tetap Private (Only Me). Pengguna tidak bisa melihat file asli Anda; mereka hanya melihat data yang ditampilkan di aplikasi.

    • Fleksibel: Bisa digunakan oleh pengguna non-Gmail (Yahoo, Outlook, dll).

    • Kendali Penuh: Anda bisa membuat fitur “Blokir Akun” atau “Ganti Password” sendiri di dalam sistem.

  • Kekurangan:

    • Keamanan Manual: Anda harus membangun sistem enkripsi password sendiri agar data tidak mudah bocor jika ada yang mengintip Sheet.

    • Risiko Brute Force: Tanpa proteksi tambahan, orang bisa mencoba menebak email berkali-kali.

Tabel Perbandingan Teknis

Fitur Google Login (Native) Search Sheet Login (Custom)
Identitas di Script Session.getActiveUser() Manual Input (Form)
Izin Google Sheet Harus di-Share ke User Cukup Pemilik (Private)
Tipe Akun User Wajib @gmail / Workspace Bebas (Apa saja)
Deployment Role Execute as: User Execute as: Me
Kemudahan Dev Sangat Mudah Butuh Coding Form Login
Privasi Data Rendah (Sheet bisa diintip) Tinggi (Sheet tersembunyi)

Mana yang Harus Anda Pilih?

  • Pilih Google Login jika: Anda bekerja dalam satu tim kantor (Google Workspace) di mana setiap orang memang berhak melihat file database tersebut dan Anda ingin proses yang instan tanpa membuat form login.

  • Pilih Search Sheet Login jika: Anda membangun aplikasi untuk klien, absensi publik, atau sistem di mana Anda ingin database tetap rahasia dan tidak ingin repot mengelola izin berbagi file satu per satu.

 

Spread the love

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.