Otentikasi Laravel
Hampir setiap aplikasi web butuh fitur login. Di PHP Native, kamu harus menulis kode registrasi, login, session handling, dan password hashing secara manual — bisa memakan ratusan baris kode.
Di Laravel? Kamu bisa punya sistem auth lengkap dalam 5 menit menggunakan Laravel Breeze.
1. Apa itu Laravel Breeze?
Laravel Breeze adalah starter kit resmi yang menyediakan:
- ✅ Halaman registrasi
- ✅ Halaman login
- ✅ Fitur logout
- ✅ Reset password via email
- ✅ Verifikasi email
- ✅ Halaman profil (edit nama, email, password)
Semuanya sudah terstyle rapi dan siap pakai!
2. Install Laravel Breeze
Dari terminal, di dalam folder project Laravel-mu:
Kalau langkah migrasi ini gagal, jangan langsung ulang berkali-kali. Baca pesan SQL-nya dan cocokkan dengan panduan Laravel Migration Gagal.
Setelah itu, buka browser dan akses /register atau /login:
- 👉
http://toko-keren.test/register - 👉
http://toko-keren.test/login
Selain Breeze (minimalis), Laravel juga punya Jetstream (lebih lengkap — team management, two-factor auth). Untuk pemula, mulai dari Breeze yang lebih sederhana.
3. Struktur File yang Dibuat Breeze
Setelah install, Breeze membuat file-file ini secara otomatis:
Kamu bisa memodifikasi tampilan form dengan mengedit file-file Blade di resources/views/auth/. Jika setelah rename file muncul View [auth.login] not found, gunakan panduan View Not Found di Laravel untuk mengecek nama folder dan file Blade.
4. Menggunakan Auth di Controller
Setelah Breeze terpasang, kamu bisa cek status login di mana saja:
Di Blade, kamu juga bisa cek:
5. Melindungi Route dengan Middleware auth
Ini bagian terpenting: mencegah user yang belum login mengakses halaman tertentu.
Jika user yang belum login mencoba akses /dashboard, Laravel otomatis redirect ke /login.
6. Hash Password (Otomatis!)
Di PHP Native, kamu harus memanggil password_hash() dan password_verify() secara manual. Di Laravel, ini otomatis:
Ini aturan nomor satu keamanan web. Laravel secara default menggunakan bcrypt untuk hashing, dan Breeze sudah menangani ini secara otomatis. Materi selengkapnya ada di Keamanan Password →.
7. Otorisasi: Siapa yang Boleh Apa?
Otentikasi (Auth) = Siapa kamu? (Login/registrasi) Otorisasi (Authz) = Apa yang boleh kamu lakukan? (Hak akses)
Laravel menyediakan Policies untuk mengatur otorisasi:
Jika user mencoba edit produk orang lain → Laravel otomatis mengembalikan 403 Forbidden.
8. Perbandingan: PHP Native vs Laravel
Selanjutnya
Kamu sudah lihat middleware('auth') di contoh route. Tapi apa sebenarnya middleware? Dan bagaimana cara membuat middleware sendiri? Lanjut ke Middleware → untuk memahami "satpam" Laravel.
Troubleshooting Terkait
Kalau login atau registrasi memunculkan error 419, lanjut baca: