Ngulik kode - Hallo guys kembali lagi nih bareng saya revi, untuk article ini kita bakal bahas config/auth pada laravel, sekarang kita fokus ke auth.php lebih dulu, oke kita mulai materinya!.
Review!
Jadi sebelumnya kita sudah bahas tentang config/app dan ini adalah materi lanjutan tentu maksudnya kita sudah lanjut ke file selanjutnya yang terdapat pada project laravel, buat kalian yang belum belajar silahkan mampir (disini).
Materi!
Siapa yang tidak tahu authentication, authentication adalah proses untuk memverifikasi apakah yang memproses ini betul-betul user atau apakah yang memproses ini betul-betul terdapat datanya pada database system.
Laravel memiliki dua fasilitas authentication, yaitu "guard" dan "provider", apa itu guard? guard menentukan bagaimana pengguna diauthentikasi saat setiap melakukan request. Provider menentukan bagaimana pengguna mengambil dari penyimpanan persisten user sendiri.
Kapan kita menggunakannya?
Kita menggunakannya ketika suatu page atau controller atau system ingin diberikan hak akses, hanya orang tertentulah yang bisa mengatur ke system itu, authentication akan berhubungan dengan middleware.
Bagaimana cara kerja dari authentication?
Authentication workflow |
Authentication paling mudah kita temukan ketika kita sudah pernah login ke dalam suatu system, ketika kita mengunjungi suatu page yang dibatasi hak akses, credential yang didapat akan dibandingkan dengan data yang terdapat pada database user atau hak akses, jika credential cocok maka proses selesai dan pengguna diberi authorization untuk mengakses.
Kita fokus kembali ke topik, pada laravel authentication terdapat tiga jenis, yaitu:
Authentication Defaults
Jenis auth ini mengontrol auth "guard" dan password reset secara default.
Authentication Guards
Sekarang kalian bisa mendefinisikan setiap authentication guard pada system, disini kita bisa memakai session storage dan eloquent user provider, maksudnya user benar-benar diambil dari database user atau hak akses, atau tempat penyimpanan lain yang digunakan oleh laravel.
Guard custom yang mimin buat |
User Providers
Seluruh authentication driver harus memiliki user provider, dimana kita sebagai user akan dipaparkan di banyak file, terutama pada MVC, jika kita memiliki banyak user hak akses, kalian paparkanlah dengan menambah provider pada script. Pada driver kita bisa memilih fasilitas dari laravel yaitu eloquent, eloquent adalah object-relational mapping yaitu teknik pemrograman untuk memetakan antara object dengan database, jadi jika pada native PHP kita harus membuat suatu query tapi disini kita hanya perlu membuat ORM yang terdapat di laravel yaitu eloquent.
Contoh custom providers |
Resetting Passwords
Pada reset password digunakan ketika berapa lama kita ingin menghapus session, reset password akan dilakukan ketika kita tidak menggunakan aplikasi laravel tetapi kita tidak melakukan logout hak akses. Jadi ketika kita registrasi hak akses, pada db akan terdapat remember token dan token itu akan hidup sementara jika kita menggunakan resetting password untuk kemanan system.
Custom resetting password untuk provider admins |
Oke teman-teman materi auth telah selesai sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya, semua article di laravel akan berkesinambungan, see u and keep learning!.