Membuat Authentication Laravel Sendiri menggunakan Middleware di App Engine Google Cloud Platform | ILMU PROGRAMMER
Home » Membuat Authentication Laravel Sendiri menggunakan Middleware di App Engine Google Cloud Platform

Membuat Authentication Laravel Sendiri menggunakan Middleware di App Engine Google Cloud Platform

Hai, Artikel ini ditulis agar memahami cara kerja middleware. Sejatinya Middleware Laravel merupakan penengah antara request yang masuk dengan controller yang dituju yang berpengaruh pada request dan respons dan biasanya sering kita gunakan untuk memvalidasi request masuk seperti login dan melakukan routing ke view yang dituju.

Sebelum memulai pastikan Anda sudah membaca:
[A] Membuat Authentication Login Register and Reset Password Pada Laravel
[B] Starter Template Code – Cara Cepat Memulai Code Laravel (Bag. 1)

Jika sudah, Berikut merupakan langkah-langkah membuat authentication sendiri di laravel

[1] Buat middleware dengan mengetik : php artisan make:middleware CekLogin

[2] Maka akan terlihat file CekLogin pada path/directory app/http/middleware/CekLogin.php

[3] Pastikan kita sudah membuat model data (dianggap sudah bisa membuat model data) , model data tersebut kita berinama md_user dan field terdiri dari user_id type varchar(10) , client type varchar(4) & password type varchar(10)
[4] Masukkan model ke dalam Middleware seperti pembahasan sebelumnya di Starter Template Code – Cara Cepat Memulai Code Laravel (Bag. 1) bedanya kali ini kita akan menempelkannya di Middleware, perhatikan code berikut di middleware

.....
$datauser = md_user::where('client', $request->client)
          ->where('user_id', $request->user_id)
          ->where('password', $request->password)
          ->first();
        if ($datauser->status == '1') { // actived
            return redirect('user/dashboard');
        }
        return $next($request);
.....

Logic: Jika user ditemukan dan statusnya = 1 (Aktif) maka masuk ke halaman user/dashboard, jika tidak maka abaikan.

[5] Daftarkan middleware yang kita buat pada app/Http/Kernel.php atau config/

//middleware baru kita disini
'ceklogin' => \App\Http\Middleware\CekLogin::class,

[6] Setelah didaftarkan dan kita simpan, maka middleware kita siap kita gunakan dengan cara menambah di route:


Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])
->name('home')
->middleware('ceklogin');
Route::get('/login', [App\Http\Controllers\Auth\LoginController::class, 'index'])
->name('login');

[7] Buat file pada App/Http/Controllers/Auth/LoginController.php

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

class LoginController extends Controller
{
    /*
    |--------------------------------------------------------------------------
    | Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles authenticating users for the application and
    | redirecting them to your home screen. The controller uses a trait
    | to conveniently provide its functionality to your applications.
    |
    */

    use AuthenticatesUsers;

    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = RouteServiceProvider::HOME;

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }
    public function index()
    {
        return view('Auth/login');
    }
}

Jika berhasil, maka jangan lupa lakukan deploy ke app engine google cloud seperti artikel di Create Run and Deploy Laravel Pada APP Engine Google Cloud Platform (GCP)

Semoga berhasil.

Leave a Comment

 
Open chat
Perlu Bantuan Konsultasi ?
Hallo Pembaca.
Telp (021) 55670115 untuk terhubung langsung dengan kami.

Apakah ada yang bisa kami bantu?