Role Hierachy adalah struktur ideal yang sesuai dengan prinsip least privilege hanya privilege yang diperlukan saja yang diberikan yang berlaku
baik pada administrator maupun pada users. Untuk mendapatkan least privilege maka diperlukan identifikasi mengenai fungsi kerja dari user. Privilege yang
diberikan tidak lebih dari itu. Pada implentasi non-RBAC sulit melakukan ini, karena proses amdinistrasinya dilakukan pada setiap user dan pada setiap obyek.
2.6 Skenario dari sisi user
Sebelum seorang user dapat mengakses URL atau mengakses pada pada RBACWeb maka proses proses otorisasi perlu dilakukan. Proses ini dilakukan
dengan memilihmeng-assign user pada ARS Active Role Set yang ada. ARS menentukan operasi apa saja yang dapat dilakukan berdasarkan ARS. User dapat
dimasukkan ke dalam dua buah rule yang berbeda. ARS akan tetap berlaku sampai end user meng-assign ARS yang lainnya. Misalnya seorang Ketua
Jurusan tetapi termasuk dalam rule dosen, maka ketua jurusan dapat mengakses rule pada dosen, ini di karenakan seorang user memiliki dua jabatan yakni
sebagai ketua Jurusan dan dosen.
Gambar 2.2 RBACWeb
2.7 Aplikasi tools yang di gunakan
Pada pembuatan aplikasi sistem penilaian akademik Fakultas Teknologi Industri, ada beberapa tools yang di gunakan, diantara sebagai berikut:
2.7.1 PHP
PHP adalah bahasa server-side scripting yang menyatu dengan HTML untuk membuat halaman web yang dinamis. Maksud dari server-side scripting
adalah sintaks dan perintah-perintah yang diberikan akan sepenuhnya dijalankan di server tetapi disertakan pada dokumen HTML. Pembuatan web ini merupakan
kombinasi antara PHP sendiri sebagai bahasa pemrograman dan HTML sebagai pembangun halaman web. Ketika seorang pengguna internet akan membangun
sebuah situs yang menggunakan fasilitas server-side scripting PHP, maka terlebih dahulu server yang bersangkutan akan memproses semua perintah PHP di server
lalu mengirimkan hasilnya dalam format HTML ke web browser pengguna internet tadi. Dengan demikian pengguna internet tidak dapat melihat kode
program yang ditulis dalam PHP sehingga keamanan dari halaman web menjadai
lebih terjamin.
Tetapi tidak seperti ASP yang juga cukup dikenal sebagai server-side scripting, PHP merupakan software yang Open Source gratis dan mampu lintas
platform, yaitu dapat digunakan dengan sistem operasi dan webs erver apapun. PHP mampu berjalan di Windows dan beberapa versi Linux. PHP juga dapat
dibangun sebagai modul pada web server Apache dan sebagai binary yang dapat berjalan sebagai CGI.
PHP dapat mengirim HTTP header, dapat mengest cookies, mengatur authentication dan redirect user. PHP menawarkan koneksitas yang baik dengan
beberapa basis data, antara lain Oracle, Sybase, mSQL, MySQL, Solid, PostgreSQL, Adabas, FilePro, Velocis, dBase, Unix dbm dan tak terkecuali
semua database berinterface ODBC. Hampir semua aplikasi berbasis web dapat dibuat dengan PHP. Namun
kekuatan utama adalah konektivitas basis data dengan web. Dengan kemampuan ini kita dapat mempunyai suatu sistem absis data yang dapat diakses dari web.
2.7.2 My SQL
MySQL adalah multiuser database yang menggunakan bahasa Srtucturd Query Language SQL. MySQL dalam operasi client-server melibatkan sevis
daemon MySQL disisi server dan berbagai macam program serta library yang berjalan disisi client. MySQL mampu menangani data yang cukup besar.
Perusahaan yang mengembangkan MySQL yaitu TeX, mengaku mampu menyimpan data lebih dari 40 database, 10.000 tabel dan sekitar 7 juta baris,
totalnya kurang lebih 100 Gigabyte data. SQL adalah bahasa standar yang digunakan untuk mengakses database
server. Bahasa ini pada awalnya dikembangkan oleh IBM, namun telah diadopsi dan digunakan sebagai standar industri. Dengan menggunakan SQL, proses akses
database menjadi lebih user-friendly dibandingkan dengan menggunakan dBASE atau Clipper yang masih menggunakan perintah-perintah pemrograman.
Dalam konteks bahasa SQL, pada umumnya informsi tersimpan dalam table-tabel yag secara logika merupakan struktur dua dimensi yang terdiri atas
baris-baris data yang berada dalam satu atau lebih kolom. Baris pada table sering disebut sebagai instance dari data, sedangkan kolom sering disebut sebagai
attribute atau field. Keseluruhan table dihimpun dalam satu kesatuan yang disebut database.
2.7.3 Framework Codeigniter
CodeIgniter merupakan salah satu open source framework yang digunakan oleh script pemprograman web PHP PHP Hypertext Preprocessor dalam
mengembangkan aplikasi web dinamis yang memenuhi standart MVC yakni: ·
MODEL mempresentasikan struktur data dari website yang bisa berupa
database maupun data lain misalnya dalam bentuk file, teks atau file xml. Didalam model akan berisi class dan fungsi untuk mengambil dan melakukan
update dan menghapus data website ·
VIEW merupakan informasi yang ditampilkan kepada pengunjung dari
website. Pada view , akan memberikan variabel variabel yang berisi data yang siap
ditampilkan. Dengan kata lain pada view adalah halaman website yang dibuat menggunakan dengan html bantuan java atau javascript, ajax dan lain2x yang
bersifat mengatur style dan struktur dokumen. ·
CONTROLER controller merupakan penghubung antara model dan view.
Didalam controller inilah terdapat class dan fungsi – fungsi yang memproses permintaan dari view kedalam struktur data didalam model.
Selain framework CodeIgniter, masih banyak framework lain yang juga menggunakan PHP,misalnya CakePHP, Symphoni Project, Zend, Seagull, Prado,
dan lain sebagainya. Penggunakan framework dalam menghasilkan suatu website akan terasa
lebih efesien bagi programmer daripada jika programmer tersebut membuat website dengan alur coding standar. Keuntungan – keuntungan yang diperoleh
programmer web dari penggunaan CodeIgniter antara lain : a. Kompatibel
dengan akses
hosting yang standar dan dapat berjalan dengan variasi versi PHP apapun dengan konfigurasi yang bagaimanapun
b. Open source framework yang ringan dan powerfull
c. Alur pemprograman lebih terstruktur
d. Kinerja progam yang baik
e. Proses setup yang cepat
f. Logika proses akan lebih dimengerti oleh programmer web
g. Tidak meminta konfigurasi apapun.
h. Fokus untuk menghasilkan solusi yang mudah
i. Tidak meminta untuk akses menggunakan CLI seperti: command line,
console, atau terminal. j.
Fleksibel terhadap peraturan coding k.
Dokumentasi yang lengkap l. Tidak
meminta dependency apapun, seperti PEAR
Metode yang digunakan oleh framework CodeIgniter disebut Model – View – Controller atau yang disingkat dengan sebutan MVC. MVC memisahkan
antara logika pemprograman dengan presentasi. Hal ini dapat terlihat dari adanya minimalisir script presentasi HTML, CSS, JavaScript, dsb yang dipisahkan dari
PHP script. Didalam folder CodeIgniter, MVC dapat kita temukan dalam folder application.
2.7.3.1 Struktur Direktori Codeigniter PHP framework
File index.php adalah file yang meload konfigurasi paling awal codeigniter, seperti nama folder system, nama folder applications, yang jika
dengan alasan keamanan ingin anda ubah, disini tempatnya.
Folder system, sebagai direktori induk semua script codeigniter diletakkan. Dan kita akan bekerja di dalam folder application.Di dalam folder
system, kita akan sering bekerja dengan folder controllers, models, dan views dari konsep MVC, Model - Views - Controller.
Folder config, berisi file-file konfigurasi untuk database – dalam file config.php, controller default – dalam file routes.php, konfigurasi database – di
file database.php, dan file-file lainnya.
2.7.3.2 Cara Kerja Codeigniter
Saat anda mengakses alamat instalasi codeigniter, misalkan di alamat http:localhostcodeigniter
, akan menampilkan halaman selamat datang.Halaman ini disediakan oleh file welcome_message.php di dalam folder
systemapplicationviews. File tersebut dikontrol oleh file welcome.php di folder systemapplicationcontrollers.
Disini, controller welcome.php tidak menggunakan model, karena aplikasinya sangat sederhana, tidak ada pengolahan data, tidak memerlukan
interaksi dengan visitor. Bagaimana codeigniter mengetahui controller mana yang dipanggil saat kita
mengakses alamat root http:localhostcodeigniter
sebenarnya kita mengakses: http:localhostcodeigniterindex.phpcontroller_default
Hal ini, kita definisikan di dalam file routes.php dalam folder systemapplicationconfig.
.
Gambar 2.3 Cara kerja Codeigniter
Pada prosesnya route sebagai pengatur controller mana yang akan di jadikan fungsi indexnya,dari controller melakukan suatu pemanggilan data atau
gambar ke database melalui model .dan oleh model,dikembalikan lagi ke controller dan controller menampikan data model pada view.
2.8 Kelebihan dan Kekurangan pada RBAC sistem penilaian Akademik Online
Berikut adalah beberapa kelebihan dan kekurangan pembuatan Role Based Access Control sistem penilaian akademik Fakultas Teknologi Industri berbasis
web dengan menggunakan framework Codeigniter. Tabel 2.2 beberapa kelebihan dan kekurangan aplikasi
No Kelebihan Kekurangan
1 Pembagian rule lebih bersifat
dinamis, tergantung pada kebutuhan user pada suatu rule,
yang di atur oleh seorang admin. Belum terdapat proses pembuatan jadwal
perkuliahan.
2 Pengaturan manajemen perkuliahan
lebih terstuktur, di mulai pada insert dosen, mata kuliah, kelas dan
pengaturan mata kuliah oleh dosen, mata kuliah yang di ambil
mahasiswa. 3
Berbasis web, lebih ringan dan user friendly
BAB III ANALISA DAN PERANCANGAN SISTEM
Pada bab ini akan di jelaskan alur perancangan dan pembuatan Aplikasi Role Based Akses Control pada Sistem Penilaian Akademik Online dengan menggunakan
Data Flow diagram, Conceptual data model, Physical data model , penyusunan tabel dan desain interface
3.1 Pengumpulan Data
Pada pembuatan sistem RBAC, di perlukan beberapa data untuk melengkapi uji coba aplikasi, pengumpulan data di lakukan dengan metode:
1. Metode Interview
Yaitu metode penelitian yang di lakukan dengan suatu tanya jawab kepada pihak fakultas mengenai beberapa rule yang ada dan untuk memperoleh data mahasiswa Fakultas
Teknologi Industri yang tidak mungkin di dapat dengan cara lain. 2.
Literatur Yaitu mempelajari buku buku referensi di perpustakaan dan internet yang berkaitan
dengan permasalahan dan proses pembuatan aplikasi.
3.2 Analisa Data
Dari data yang telah terkumpul maka di lakukan analisa data yaitu menganalisa beberapa hak akses dalam sistem penilaian pada Fakultas Teknologi Industri.
Dari analisa data yang di peroleh di tentukan beberapa rule dalam hak akses sistem penilaian yang bersifat default. Oleh karena itu, di buat aplikasi RBAC agar rule
yang ada bersifat dinamis bisa berubah sesuai dengan kebutuhan user.