Tutorial Sistem Login Register dengan Role Menggunakan Node.js, Express, dan MySQL

Tutorial Sistem Login Register dengan Role Menggunakan Node.js, Express, dan MySQL

Daftar Isi

  1. Persiapan Awal

  2. Struktur Database

  3. Struktur Proyek

  4. Konfigurasi Proyek

  5. Membuat Database dan Tabel

  6. Membuat Frontend

  7. Membuat Backend

  8. Implementasi Role-Based Access Control

  9. Pengujian

Persiapan Awal

Kebutuhan Sistem

  • Node.js (versi 14 atau lebih tinggi)

  • MySQL (versi 5.7 atau lebih tinggi)

  • Text editor (VS Code, Sublime Text, dll)

Instalasi Package yang Diperlukan

Struktur Database

Kita akan membuat dua tabel utama:

  1. Tabel users

  2. Tabel roles

nama file database.sql

Struktur Proyek

Konfigurasi Proyek

1. File .env

2. config/database.js

3. server.js

Frontend Implementation

1. views/register.html

2. views/login.html

3. public/css/style.css

4. public/js/main.js

Backend Implementation

1. middleware/auth.js

2. middleware/roleCheck.js

3. routes/auth.js

4. routes/protected.js

User Model

Role model

Penggunaan

  1. Setup Database

    • Jalankan script SQL untuk membuat database dan tabel

    • Sesuaikan konfigurasi database di file .env

  2. Menjalankan Aplikasi

  3. Mengakses Aplikasi

    • Buka browser dan akses http://localhost:3000

    • Register user baru

    • Login dengan kredensial yang sudah dibuat

    • Coba akses berbagai route sesuai role

Fitur Keamanan

  1. Password di-hash menggunakan bcrypt

  2. Autentikasi menggunakan JWT

  3. Role-based access control

  4. Validasi input

  5. Proteksi terhadap SQL injection menggunakan prepared statements

Last updated

Was this helpful?