Permission System
Overview
Permission System merupakan komponen inti dalam mekanisme kontrol akses yang menentukan batasan tindakan pengguna dalam sistem.
Melalui permission, sistem dapat mengatur secara spesifik:
- Apa yang dapat dilihat oleh pengguna
- Apa yang dapat dilakukan oleh pengguna
Tujuan dan Use Case
Permission system digunakan untuk:
- Membatasi akses fitur berdasarkan tanggung jawab
- Mencegah tindakan yang tidak diizinkan
- Mengamankan data sensitif
- Mendukung implementasi Role-Based Access Control (RBAC)
Konsep Permission
Permission umumnya dibagi ke dalam beberapa jenis aksi:
- View (Read) → melihat data atau halaman
- Create → menambahkan data baru
- Update → mengubah data yang sudah ada
- Delete → menghapus data
Setiap modul dalam sistem dapat memiliki kombinasi permission yang berbeda.
Behavior Sistem
Sistem menerapkan aturan berikut dalam pengelolaan permission:
- Permission berlaku untuk semua user dalam role tersebut
- Perubahan permission bersifat real-time
- Berlaku di seluruh modul dashboard (global enforcement)
- Permission bekerja di level backend, bukan hanya tampilan UI
Permission lebih tinggi dari UI — jika suatu aksi tidak diizinkan, sistem tetap akan menolak meskipun UI dimanipulasi.
Prasyarat
Sebelum mengatur permission:
- Role sudah dibuat
- Anda memiliki akses untuk mengelola role
- Struktur modul dan fitur sudah dipahami
Langkah Pengaturan Permission
Dampak Perubahan Permission
Setelah permission diubah:
- Akses user akan langsung menyesuaikan
- Menu atau fitur tertentu bisa muncul atau hilang
- Aksi tertentu bisa diaktifkan atau dinonaktifkan
- Tidak memerlukan login ulang
Best Practice
Untuk implementasi yang optimal:
- Terapkan prinsip least privilege (akses seminimal mungkin)
- Hindari memberikan semua permission ke semua role
- Gunakan role berbeda untuk fungsi berbeda
- Lakukan audit permission secara berkala
- Dokumentasikan konfigurasi penting
Note
- Permission adalah fondasi utama keamanan sistem
- Perubahan kecil dapat berdampak besar terhadap operasional
- Disarankan untuk melakukan pengujian setelah perubahan permission