Kontrol Berbasis Komputer LANDASAN TEORI

14

2.2 Kontrol Berbasis Komputer

Tipe dari countermeasures tindakan balasan untuk threat pada sistem komputer terdiri dari kontrol secara fisik sampai prosedur administratif. Jenis penanggulangan ancaman pada sistem komputer terdiri dari kontrol fisik sampai prosedur administratif. Keamanan DBMS yang baik harus dihubungkan dengan sistem operasi. 2.2.1 Tingkatan pada keamanan basis data sebagai berikut : 1. Fisikal  lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap serangan perusak. 2. Manusia  wewenang pemakai harus dilakukan dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai yang berwenang 3. Sistem Operasi  Kelemahan pada SO ini memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh jaringan sistem database menggunakan akses jarak jauh. 4. Sistem Database  Pengaturan hak pemakai yang baik. 2.2.2 Pengaturan keamanan basis data sebagai berikut : 1. Authorization Otorisasi 15 Memberi hak atau priviledge yang dapat membuat subjek melakukan akses yang sah ke dalam sebuah objek sistem. Kontrol otorisasi tidak hanya mengatur pengaksesan ke suatu objek, tetapi juga apa yang dapat dilakukan subjek terhadap objek. Proses otorisasi meliputi authentikasi dari user program yang meminta akses ke obyek database tabel, view, strored procedure, trigger, atau objek lain yang bisa dibuat menggunakan sistem. Autentifikasi merupakan suatu mekanisme untuk menentukan apakah user adalah user seperti yang diklaim. Tanggung jawab Sistem administrator yaitu mengijinkan pengguna untuk mengakses sistem komputer. Tanggung jawab dari Database Administrator DBA untuk mengijinkan user mengakses DBMS. 2. Access Control Kontrol Akses Kontrol akses ke sistem basisdata berdasarkan pemberian grant dan pengambilan revoke priviledge. Privilege diberikan untuk memungkinkan user membuat atau mengakses database read, write, atau modify dan sekaligus membuat objek database seperti relation, view, index atau menjalankan berbagai keperluan dari DBMS. Privilege diberikan grant ke user untuk melakukan tugas yang diperlukan untuk pekerjaannya. Pengguna yang membuat objek pada database seperti relation, atau view secara otomatis akan memperoleh hak istimewa pada objek tersebut. 16 3. Views View adalah hasil dinamis yang diperoleh dari satu atau lebih operasi relasi yang dioperasikan pada relasi terbaik untuk menghasilkan relasi lain. View adalah virtual relasi yang tidak secara aktual ada dalam database, tetapi dihasilkan berdasarkan permintaan khusus dari user, pada saat waktu diminta. Mekanisme view memberikan mekanisme keanaman yang kuat dan flexsibel dengan menyembunyikan bagian database dari user tertentu. View dapat didefinisikan dengan menggunakan beberapa relasi yang dilakukan oleh user yang diberi grant privilege untuk menggunakannya.  Contoh pada Database relasional, untuk pengamanan dilakukan beberapa level : 1. Relasi  pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung suatu relasi 2. View  pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang terapat pada view 3. Read Authorization  pengguna diperbolehkan membaca data, tetapi tidak dapat memodifikasi. 4. Insert Authorization  pengguna diperbolehkan menambah data baru, tetapi tidak dapat memodifikasi data yang sudah ada. 5. Update Authorization  pengguna diperbolehkan memodifikasi data, tetapi tidak dapat menghapus data. 17 6. Delete Authorization  pengguna diperbolehkan menghapus data.  Untuk Modifikasi data terdapat otorisasi tambahan : 1. Index Authorization  pengguna diperbolehkan membuat dan menghapus index data. 2. Resource Authorization  pengguna diperbolehkan membuat relasi- relasi baru. 3. Alteration Authorization  pengguna diperbolehkan menambahmenghapus atribut suatu relasi. 4. Drop Authorization  pengguna diperbolehkan menghapus relasi yang sudah ada. 3. Backup and Recovery Backup adalah proses secara periodic membuat copy database dan log file ke media penyimpanan offline. DBMS harus mempunyai fasilitas untuk melakukan backup yang akan membantu untuk melakukan recovery database jika terjadi kegagalan failure database. Back up terhadapat database dan log file secara periodic ditempat yang aman sehingga, dapat digunakan untuk mengembalikan database dalam keadaan konsisten yang terakhir. Journaling: proses menjaga dan memelihara sebuah file log atau jurnal dari semua perubahan yang dibuat ke database untuk memungkinkan pemulihan 18 yang akan dilakukan secara efektif dalam hal kegagalan. Keuntungan dari journaling adalah jika terjadi failure, database dapat direcover pada kondisi terakhir dengan menggunakan backup copy database dan informasi yang terdapat dalam log file. Isi Jurnal :  Record transaksi 1. Identifikasi dari record 2. Tipe record jurnal transaksi start, insert, update, delete, abort, commit 3. Item data sebelum perubahan operasi update dan delete 4. Item data setelah perubahan operasi insert dan update 5. Informasi manajemen jurnal misal : pointer sebelum dan record jurnal selanjutnya untuk semua transaksi  Record checkpoint : suatu informasi pada jurnal untuk memulihkan database dari kegagalan, kalau sekedar redo, akan sulit penyimpanan sejauh mana jurnal untuk mencarinya kembali, maka untuk membatasi pencarian menggunakan teknik ini. Recovery : merupakan upaya uantuk mengembalikan basis data ke keadaaan yang dianggap benar setelah terjadinya suatu kegagalan. 3 Jenis Pemulihan : 19 1. Pemulihan terhadap kegagalan transaksi : Kesatuan prosedur alam program yang dapat mengubah memperbarui data pada sejumlah tabel. 2. Pemulihan terhadap kegagalan media : Pemulihan karena kegagalan media dengan cara mengambil atau memuat kembali salinan basis data backup 3. Pemulihan terhadap kegagalan sistem : Karena gangguan sistem, hang, listrik terputus alirannya. Fasilitas pemulihan pada DBMS : 1. Mekanisme backup secara periodik 2. fasilitas logging dengan membuat track pada tempatnya saat transaksi berlangsung dan pada saat database berubah. 3. fasilitas checkpoint, melakukan update database yang terbaru. 4. manager pemulihan, memperbolehkan sistem untuk menyimpan ulang database menjadi lebih konsisten setelah terjadinya kesalahan. Teknik Pemulihan : 1. defered upate perubahan yang ditunda : perubahan pada DB tidak akan berlangsung sampai transaksi ada pada poin disetujui COMMIT. Jika terjadi kegagalan maka tidak akan terjadi perubahan, tetapi diperlukan operasi redo untuk mencegah akibat dari kegagalan tersebut. 20 2. Immediate Update perubahan langsung : perubahan pada DB akan segera tanpa harus menunggu sebuah transaksi tersebut disetujui. Jika terjadi kegagalan diperlukan operasi UNDO untuk melihat apakah ada transaksi yang telah disetujui sebelum terjadi kegagalan. 3. Shadow Paging : menggunakan page bayangan imana paa prosesnya terdiri dari 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai cadangan. Ketika transaksi mulai berlangsung kedua tabel ini sama dan selama berlangsung tabel transaksi yang menyimpan semua perubahan ke database, tabel bayangan akan digunakan jika terjadi kesalahan. Keuntungannya adalah tidak membutuhkan REDO atau UNDO, kelemahannya membuat terjadinya fragmentasi. 4. Integrity Integrity constrain memberi kontribusi dalam melakukan pemeliharaan terhadap keamanan sistem database dengan melakukan pencegahan data dari bentuk yang tidak valid yang mengakibatkan hasil yang tidak benar. Integrity didefinisikan oleh Clark and Wilson adalah : “No user of the system, even if authorized, may be permitted to modify data items in such a way that asses or a accounting records of the company are lost or corrupted ”. Tidak ada user dari sistem, bahkan jika yang berwenang, dapat diizinkan untuk memodifikasi item data sedemikian rupa sehingga akses atau catatan akuntansi sebuah perusahaan hilang atau rusak 21 5. Enkripsi Enkripsi adalah pengkodean data dengan algoritma khusus yang membuat data tidak terbaca oleh program apapun tanpa deksripsi kunci. Teknik unutuk melindungi data yang sensitive dalam sistem database. Enkripsi dimaksudkan untuk melindungi informasi agar tidak terlihat oleh orang atau pihak yang bukan seharusnya. Informasi ini dapat berupa nomor kartu kredit, catatan penting dalam komputer, maupun password untuk mengakses sesuatu. Enkripsi juga dapat digunakan untuk melakukan proteksi pada saat data ditransmisikan melalui jalur komunikasi. Ada beberapa teknik untuk encoding data dalam penyembunyian informasi, diantaranya : a. Reversible Teknik reversible lebih umum digunakan. Untuk mentranformasikan data yang secure ke dalam sistem yang tidak secure digunakan Cryptosystem yang terdiri dari: - An encryption key : Untuk enkripsi data. - An encryption algorithm dengan encryption key mentransformasikan plaintext ke dalam chipertext. - A decryption key untuk mendekrip chipertext. 22 - A decryption algorithm, dengan decryption key mengubah chipertext kembali ke plaintext. Teknik yang digunakan untuk cryptosystem ada dua yaitu symmetric encryption dan asymmetric encryption. Teknik enkripsi symmetric menggunakan encryption dan decryption key yang sama tergantung pada jalur komunikasi yang aman. Teknik enkripsi asimmetris menggunakan encryption dan decryption key yang berbeda. b. Irreversible Pada teknik ini tidak mengijinkan data asli untuk diketahui oleh orang lain. 6. RAID Technology Redundant Array of Inexpensive Disks. Hardware dimana DBMS yang berjalan harus fault-tolerant, yang berarti DBMS seharusnya terus beroperasi jika salah satu komponen hardware gagal. Menggunakan komponen redundan yang terintegrasi ke dalam sistem yang bekerja kapanpun , satu atau lebih komponen gagal. Salah satu pemecahan solusi untuk menyediakan sebuah array disk yang besar yang terdiri dari susunan beberapa disk yang independent yang diorganisasi untuk meningkatkan keandalan dan pada saat yang bersamaan meningkatkan unjuk kerja. 23

2.3 SQL Data Manipulation