Perkembangan teknologi informasi yang berlangsung saat ini telah
menjadikan database sebagai framework dalam pembentukan sistem informasi
pada suatu perusahaan dan secara langsung mengubah cara
pengoperasionalan proses bisnis yang berjalan dalam suatu perusahaan
menjadi lebih terintegrasi dan terstruktur dengan baik. Pemahaman
mengenai konsep database sendiri tentu saja sangat dibutuhkan bagi
seorang mahasiswa, pengajar, ataupun praktisi agar memperoleh perspektif
yang lebih mendalam mengenai pentingnya pengimplementasian database
dalam suatu perusahaan.
Pengertian Database
Database
didefinisikan sebagai suatu kumpulan data yang saling terhubung dan
terbagi(shared) yang bertujuan untuk memelihara informasi yang
dibutuhkan oleh suatu organisasi atau pun perusahaan.
Sedangkan system database (sistem basis data) dapat didefinisikan sebagai komputerisasi sistem penyimpanan data yang tujuannya untuk memelihara informasi serta agar informasi tersedia pada saat dibutuhkan.
Keuntungan system database
•Mengurangi redundancy.
Data yang sama pada beberapa aplikasi cukup disimpan sekali saja.
•Integrity.
Data tersimpan secara akurat.
•Menghindari inkonsisten.
Karena redundancy berkurang, maka update data jadi lebih efisien.
•Penggunaan data bersama.
Data yang sama dapat diakses oleh beberapa user pada saat bersamaan.
•Standarisasi.
Menyangkut keseragaman penyajian data.
•Menyeimbangkan kebutuhan.
Dapat ditentukan prioritas suatu operasi, misal antaraupdate dengan retrieval.
Data adalah sumber daya yang berharga sehingga harus dikontrol dan diatur, sebagaimana sumber daya perusahaan/organusasi yang lainnya. Sebagaian atau seluruh data perusahaan/organisasi biasanya mempunyai nilai strategi bagi perusahaan/organisasi tersebut, oleh karena itu data harus tetap aman dan rahasia.
Pengertian Keamanan Database
Keamanan database adalah suatu cara untuk melindungi database dari ancaman, baik dalam bentuk kesengajaan atau pun bukan.
Ancaman
adalah segala situasi atau kejadian baik secara sengaja maupun tidak
yang bersifat merugikan dan mempengaruhi system serta secara konsekuensi
terhadap perusahaan/organisasi yang memiliki system database.
Keamanan
database tidak hanya berkenaan dengan data yang ada pada database saja,
tetapi juga meliputi bagian lain dari system database, yang tentunya
dapat mempengaruhi database tersebut. Hal ini berarti keamanan database
mencakup perangkat keras, perangkat lunak, orang dan data.
Agar
memiliki suatu keamanan yang efektif dibutuhkan kontrol yang tepat.
Seseorang yang mempunyai hak untuk mengontrol dan mengatur database
biasanya disebut Administrator database. Seorang administratorlah yang
memegang peranan penting pada suatu system database, oleh karena itu
administrator harus mempunyai kemampuan dan pengetahuan yang cukup agar
dapat mengatur suatu system database.
2. PEMBAHASAN
Keamanan database database dapat di sebabkan oleh hal sebagai berikut :
Tingkatan Pada Keamanan Database :
· Fisikal à lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap serangan perusak.
· Manusia à wewenang pemakai harus dilakukan dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai yang berwenang
· Sistem Operasi à
Kelemahan pada SO ini memungkinkan pengaksesan data oleh pihak tak
berwenang, karena hampir seluruh jaringan sistem database menggunakan
akses jarak jauh.
· Sistem Database à Pengaturan hak pemakai yang baik.
Secara garis besar keamanan database dikategorikan sbb:
· KeamananServer
· Trusted IPAccess
· Koneksi Database
· Kontrol Akses Table
Penjelasan
Perlindungan
Server adalah suatu proses pembatasan akses yang sebenarnya pada
database dalam server itu sendiri. Menurut Blake Wiedman ini adalah
suatu sisi keamanan yang sangat penting dan harus direncanakan secara
hati-hati.
Ide
dasarnya adalah kita tidak dapat mengakses apa yang kita tidak dapat
lihat, atau apakah kita ingin database server kita dapat dilihat
diseluruh dunia? Database kita bukanlah suatu web server,koneksi yang
tidak dikenali tidak diijinkan.
· Trusted Ip Access
Setiap
server harus dapat mengkonfigurasikan alamat ip yang diperbolehkan
mengakses dirinya. Kita tidak mengijinkan semua orang dapat mengakses
server kita sebagaimana kita tidak mengijinkan orang lain memasuki rumah
kita tanpa ijin. Jika server melayani suatu web server maka hanya
alamat web server itu saja yang dapat mengakses server database
tersebut.Jika server database melayani jaringan internal maka hanya
alamat jaringanlah yang boleh menghubungi server.
Sangat
perlu diperhatikan bahwa jangan pernah menggabungkan server database
web dengan server database informasi internal perusahaan anda, ini
adalah suatu mental yang buruk untuk seorang admin.
· Koneksi Database
Saat
ini semakin banyaknya aplikasi dinamis menjadi sangat menggoda untuk
melakukan akses yang cepat bahkan update yang langsung tanpa
authentifikasi. Jangan pernah berpikir demikian, ini hanya untuk seorang
pemalas.Jika kita ingin mengijinkan pemakai dapat mengubah database
melalui web page, pastikan anda memvalidasi semua masukan untuk
memastikan bahwa inputan benar, terjamin dan aman.Sebagai contoh,
pastikan anda menghilangkan semua code SQL agar tidak dapat dimasukan
oleh user.Jika anda seorang admin yang membutuhkan koneksi ODBC,pastikan
koneksi yang digunakan unik.
· Kontrol Akses Tabel
Kontrol
akses table ini adalah salah satu bentuk keamanan database yang sering
diabaikan,karena cukup sulit penerapannya. Penggunaan control akses
table yang benar dibutuhkan kolaborasi antara system administrator
dengan pengembang database. Hal inilah yang sulit dilakukan. Pemberian
ijin user untuk mengakses informasi dapat membuat informasi terbuka
kepada public. Jika seorang user mengakses informasi apakah akan dilihat
menggunakan session yang sama? Atau jika table digunakan sebagai
referensi system mengapa ia diberikan ijin selain hak membaca saja.
Kelemahan keamanan database dapat dibedakan menjadi beberapa kelompok:
• Vendor bugs/ kelemahan dari pembuat.
• Poor architecture/ rancangan yang jelek.
• Misconfigurations/ salah konfigurasi.
• Incorrect usage/ Penggunaan yang tidak pada tempatnya.
Penjelasan
· Vendor bugs/ kelemahan dari pembuat
Kelemahan
dari pembuat diantaranya adalah buffer overflows dan kesalahan program
yang lain yang dihasilkan dari eksekusi perintah olehusers. Downloading
dan menginstal patches biasanya digunakan untuk memperbaiki kelemahan
dari pembuat.Untuk meyakinkan bahwa kita tidak memiliki kelemahan karena
masalah ini maka kita harus terus melihat perkembangan jika ada patches
terbaru, secepatnya diinstal setelah diluncurkannya patche terbaru
tersebut.
· Rancangan yang jelek
Perancangan
yang jelek ini disebabkan karena kurangnya perencanaan yang tepat
terhadap bagaimana aplikasi bekerja. Kelemahan yang seperti ini ialah
kelemahan yang paling sulit diperbaiki, karena untuk memperbaikinya
dibutuhkan kerja ulang secara keseluruhan oleh pembuat. Sebagai contoh
rancangan yang jelek adalah pemanfaatan bentuk enkripsi yang lemah
darivendor.
· Salah konfigurasi
Salah
konfigurasi disebabkan tidak tepatnya konfigurasidatabase. Banyak dari
pilihan konfigurasidatabase dapat diset sesuai keamanan yang dibutuhkan.
Sebagian dari parameter diset tidak aman secaradefault.Biasanya bukan
suatu masalah sampai dibutuhkan perubahan konfigurasi yang tidak
diharapkan. Sebagai contoh pada oracle adalah parameter REMOTE_OS_A UTHE
NT, secaradef ault diset “true” yang berarti kita mengijinkan user
unauthenticated/ tidak berwenang dapat melakukan koneksi kepada
database.
· Penggunaan yang salah
Penggunaan
yang salah terjadi dari pemanfaatan kegunaan/ fungsi perintah dari
program yang diberikan oleh pembuat/vendor, yang dipakai untuk menembus
system. Sebagai contoh SQL INJECTION yang disalah gunakan.