PEMBAHASAN
RBAC ( Role Based Access Control ) adalah control akses yang merupakan alternative
baru yang merupakan perpaduan mandatory access control (MAC) dan discretionary
access control (DAC). RBAC mengacu pada role based security. RBAC bersifat netral
dan merupakan teknologi control akses yang flexible untuk simulasi DAC dan MAC.
Sebaliknya, MAC dapat mensimulasikan RBAC jika grafik peran dibatasi pada pohon
daripada kumpulan yang diurutkan sebagian. Dalam organisasi, roles dibuat untuk fungsi
kerja yang berbeda. Dengan kata lain peran keanggotaan didasarkan pada kompetensi,
tugas, dan kewenangan.
Role berorientasi pada group, sekumpulan transaksi dibuat. Transaksi disini dapat
merupakan obyek yang berupa program yang berhubungan dengan data. Seorang
admintrator sekuriti dapat menambah dan menghapus transaksi ke dalam sebuah role atau
bahkan menolak user pada suatu role. Dengan mengelompokkan user kedalam role maka
ada memudahkan pada proses otorisasi dan kemampuan audit. Hal ini bertolak
belakangan dengan access list model pada umumnya yang dilakukan dengan jalan
mencari seluruh otorisasi yang ada kemudian mengalokasi hak dan ijin untuk user
tersebut.
Dalam mengembangkan aplikasi, kita tentu membagi-bagi user sesuai fungsinya. Kita
dapat merancang pembagian user sendiri atau kita belajar dari best practice yang pernah
dilakukan. Best practice untuk pembagian akses aplikasi adalah menggunakan RBAC
atau Role Based Access Control. Dalam RBAC ini kita akan membuat Role untuk
masing-masing tingkatan user. Dalam setiap Role ini terdapat berbagai menu yang
diberikan kepada Role ini lengkap dengan permissionnya.
Misal Role Admin Purchasing akan mendapatkan menu Purchase Order dengan
permission Create.
Kemudian Role Purchasing Manager akan mendapatkan menu Purchase Order dan
Purchase Request masing-masing dengan permission Approve.
Secara relasi tabelnya Role -> Menu -> Permission .
Dengan demikan akan terjadi relasi Many to Many untuk User <-> Role.
Dalam sistem keamanan komputer, role-based access control (RBAC) adalah sebuah
pendekatan untuk membatasi akses sistem untuk pengguna yang berwenang. Hal ini
digunakan oleh sebagian besar perusahaan dengan lebih dari 500 karyawan, dan dapat
diimplementasikan melalui mandatory access control (MAC) atau discretionary access
control (DAC). RBAC kadang-kadang disebut sebagai role-based security.
Pada diagram di bawah, hubungan antara Pengguna (u), Grup / Role (g), dan Izin (p)
dengan tiga tabel, yaitu u_g, g_p, dan g_g, cukup fleksibel untuk mencakup semua tree
atau jaringan
Namun, bagian yang sulit dari model ini adalah bagaimana menangani hierarki role /
grup dalam SQL karena sifat rekursif dari navigasi antara hubungan grup (g_g).
Salah satu solusinya adalah dengan menggunakan SQL stored routines. Berikut ini
adalah desain di MySQL:
call get_permisions('u2');
call get_users('p1');
Untuk mendapatkan semua izin pengguna atau semua pengguna yang memiliki izin.
IF (x IS NOT NULL)
THEN
CALL get_parents(x, x);
SET parents = concat(children, ',', x);
END IF;
END;
BAB III
PENUTUP
3.1 Kesimpulan