Beranda / Artikel / Authentication
Authentication

Authentication Bukan Cuma Halaman Login yang Berfungsi

Lima pemeriksaan pada login, sesi, logout, dan perlindungan endpoint yang sering luput dari pengujian antarmuka.

Halaman login bisa tampak normal, tombol berhasil ditekan, dan pengguna masuk ke dashboard. Itu baru satu alur yang berjalan. Authentication juga harus menjelaskan apa yang terjadi ketika sesi tidak valid.

Login berhasil bukan satu-satunya tes

Buat pengujian menggunakan akun uji, bukan akun pelanggan. Mulai dari request yang sengaja dikirim tanpa sesi ke endpoint privat. Jika endpoint seharusnya butuh login, server harus menolaknya.

Lanjutkan dengan sesi kedaluwarsa. Apakah API merespons dengan status yang sesuai? Apakah antarmuka memberi kesempatan untuk login ulang tanpa membuat pengguna kebingungan?

Logout harus mengakhiri akses

Setelah logout, coba ulangi request yang sebelumnya diizinkan menggunakan sesi lama di lingkungan aman. Perilaku yang diharapkan bergantung pada desain session atau token, tetapi kontraknya harus eksplisit dan teruji.

Periksa perlindungan sesi

Untuk aplikasi yang menggunakan cookie, kaji atribut Secure, HttpOnly, dan SameSite sesuai kebutuhan. HTTPS dan aturan masa berlaku juga penting. Jangan mengubah konfigurasi secara acak tanpa memahami alur login dan domain aplikasi.

Periksa alur pemulihan akun

Jika ada fitur reset password, pastikan token pemulihan memiliki aturan kedaluwarsa, sekali pakai jika sesuai, dan perlindungan dari penyalahgunaan request.

Catat bukti, bukan kesan

Sertakan file middleware, handler login, pengelolaan sesi, dan nama tes yang mendukung setiap kesimpulan. Jika source atau runtime tidak dapat diakses, tulis “belum diverifikasi”.

Untuk daftar pertanyaan dan prompt pemeriksaan yang bisa digunakan bersama AI coding tool, buka Audit Authentication.

Sudah siap memeriksa project?

Gunakan 3 Audit Fundamental gratis untuk struktur project, login, dan hak akses user. Hasil checklist adalah penilaian awal, bukan scan kode.

Mulai audit gratis →