Files
2026-06-09 20:22:09 +07:00

83 lines
3.3 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- ============================================================
-- MIGRASI: Tabel Users & Role-Based Access Control
-- WebGIS Poverty Mapping Sistem Autentikasi
-- Jalankan di phpMyAdmin atau MySQL CLI setelah database.sql
-- ============================================================
USE webgis_p3;
-- ── Tabel pengguna ─────────────────────────────────────────
CREATE TABLE IF NOT EXISTS users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(100) NOT NULL UNIQUE,
nama_lengkap VARCHAR(200) NOT NULL,
role ENUM('admin','petugas','pengurus','walikota') NOT NULL,
password_hash VARCHAR(255) NOT NULL,
aktif TINYINT(1) NOT NULL DEFAULT 1,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
INDEX idx_role (role),
INDEX idx_aktif (aktif)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- ── Akun demo (password semua akun: "password") ──
-- Hash bcrypt digenerate dengan PHP password_hash('password', PASSWORD_DEFAULT)
--
-- admin → password
-- petugas → password
-- pengurus → password
-- walikota → password
INSERT INTO users (username, nama_lengkap, role, password_hash) VALUES
(
'admin',
'Administrator Sistem',
'admin',
'$2y$10$mhMxyKlOSSTQxfmWXEncfe1AF56CJ8fb.v0h0CYZ.ELQQd8iP5LrG'
),
(
'petugas',
'Petugas Lapangan',
'petugas',
'$2y$10$mhMxyKlOSSTQxfmWXEncfe1AF56CJ8fb.v0h0CYZ.ELQQd8iP5LrG'
),
(
'pengurus',
'Pengurus Rumah Ibadah',
'pengurus',
'$2y$10$mhMxyKlOSSTQxfmWXEncfe1AF56CJ8fb.v0h0CYZ.ELQQd8iP5LrG'
),
(
'walikota',
'Walikota Pontianak',
'walikota',
'$2y$10$mhMxyKlOSSTQxfmWXEncfe1AF56CJ8fb.v0h0CYZ.ELQQd8iP5LrG'
);
-- !! Untuk database yang sudah ada, jalankan update_pass.php atau generate_hash.php !!
-- ── Catatan hak akses per role ──────────────────────────────
/*
ROLE: admin
─────────────────────────────────────────────────────────────
• CRUD semua data: SPBU, kemiskinan, rumah ibadah
• Dapat melihat semua layer & analisis spasial
• Fitur FAB Tambah: SPBU, Kemiskinan, Rumah Ibadah
ROLE: petugas
─────────────────────────────────────────────────────────────
• Input & edit data kemiskinan (CREATE + UPDATE + DELETE)
• View semua data (read-only untuk SPBU & Rumah Ibadah)
• Fitur FAB Tambah: hanya Kemiskinan
• Tidak dapat hapus data SPBU atau Rumah Ibadah
• Tidak dapat tambah/edit SPBU atau Rumah Ibadah
ROLE: pengurus
─────────────────────────────────────────────────────────────
• Input & edit data rumah ibadah miliknya (CREATE + UPDATE + DELETE)
• View data kemiskinan (read-only)
• Fitur FAB Tambah: hanya Rumah Ibadah
• Tidak dapat hapus data SPBU atau kemiskinan
• Tidak dapat tambah/edit SPBU atau kemiskinan
*/