
Pada artikel kali ini kita akan melanjutkan membuat web service menggunakan PHP menggunakan framework Lumen dari Laravel. pada kal ini kita akan menambahkan fungsi autentikasi. agar membuat sekuritas terhadap data yang kita punya.
Setelah kemaren membuat table "users" kita akan membuat model User yang di simpan pada folder "app\Models" dengan nama User.php
Lalu setelah itu kita akan membuat endpoint dengan kebutuhan sebagai berikut :
mari kita tambahkan pada file "routes/web.php"
dan juga setelah itu kita akan coba membuat AuthController.php dan disimpan pada folder Controller
Mari kita test dengan menggunakan Postman. Positive case.

Instalasi dan Konfigurasi JWT untuk Lumen
Ketika kita login, maka kita akan mengembalikan Token login yang bisa digunakan sebagai
penanda sesi Login. Untuk membuat Token ini, kita akan menggunakan plugin JWT untuk
Lumen
Pertama kita jalankan command "composer require tymon/jwt-auth:dev-develop" dan harus terkoneksi dengan internet
kita coba melakukan pengecekan pada file composer.json untuk memasyikan JWT telah terinstall
Lalu buka file "bootstrap/app.php" dan Cari block ‘Register
Service Providers’. unccomment baris tersebut dan tambahkan
"$app->register(Tymon\JWTAuth\Providers\LumenServiceProvider::class);"
dan jadi seperti dibawah ini
Lalu jalankan pada command prompt "php artisan jwt:secret" dan setelah itu coba cek file .env ada variable JWT_SECRET yg berisi secret code
Membuat fungsi login
setelah kita membuat fungsi register selanjutnya kita akan membuat fungsi login , pertama buka file "bootstrap/app.php" dan perhatikan pada register middleware dan kita akan mengaktifkan fungsi auth
lalu setelah itu kita tambahkan package JWT pada user model
Lalu buat file config/auth.php dengan code seperti di bawah ini
Lalu tambahkan auth pada AuthControlller.php
setelah itu buat fungsi lagin pada controller AuthController.php
Lalu kita akan coba pada postman dengan mengirim paramater email dan password terdaftar
kita akan membuat endpoint tentang post harus melewati middleware auth
Lalu kita akan mencobanya melalui postman
tidak dapat mengakses karena belum menambahkan header Authorization dengan value [Bearer LOGIN_TOKEN].
Authorization ini akan digunakan sebagai sesi Login
Lalu setelah itu kita akan membatasi bahwa data post yang ditampilkan sesuai degnan user_id yang melakukan login. Dari Token login yang dikirim, kita bisa melakukan identifikasi user. Sebagai contoh, kita hanya
akan mengembalikan list posts berdasarkan posts.user_id = UserLogin.id.
Lalu kita akan mencobanya pada postman dengan menggunakan login user_id 1
dan terakhir saya akan mencoba dengan token login user_id 2
Sekian tutorial mengenai Lumen Service App - Lumen Authentication, mohon maaf apabila banyak sekali kekurangan
Terima kasih