Database Security
Database Security merujuk pada kegiatan atau upaya untuk melindugi database dari ancaman luar. Database Security kebanyakan menggunakan security control untuk mengontrol akses ke dalam suatu database. Contoh – contoh ancaman yang dapat mengancam database santara lain:
- Penggunaan database oleh orang-orang luar. Akses ke dalam database oleh orang luar dapat mengancam kegunaan dari suatu database. Perubahan struktur database, perubahan data, dan data hilang merupakan beberapa bahaya yang disebabkan oleh akses database secara illegal.
- Virus atau malware dapat menyerang database dan menyebabkan kebocoran data ke pihak-pihak yang ridak diinginkan. Serangan malware dapat juga menyebabkan data penting hilang sehingga kerja suatu organisasi menjadi terganggu atau terhambat.
- Kerusakan fisik ke database yang disebabkan oleh berbagai macam hal seperti petir, kebakaran, banjir, dll. Panas yang berlebih juga dapat merusak sistem database.
- Kurangnya resource atau kemampuan dalam menjalankan database. Kekurangan resource dapat meliputi berbagai hal seperti keuangan atau sumber daya manusia yang kurang. Keuangan yang tidak mencukupi menghambat kapasitas dan fungionalitas dari database sedangkan masalah sumber daya manusia menghambat perkembangan dari database
- Rusaknya data dikarenakan kelalaian manusia atau sistem. Cth: data error, kesalahan dalam pengoperasian database, dll.
Untuk melindungi database dari berbagai ancaman terhadap suatu sistem database maka digunakan Database Security sebagai barisan pertahanan. Terdapat banyak tipe-tipe Database Security, mulai dari kontrol langsung sampai ke proses administrasi. Untuk menentukan tipe security yang tepat perlu dilakukan analisis terhadap Database Security yang telah ada. Beberapa cara untuk menganalisis kekuatan dari Database Security:
- Pencegahan akses dari pihak luar dengan akses kontrol dan data manajemen yang kuat.
- Stress Testing untuk menguji ketahanan database terhadap serangan DdoS oleh pihak luar atau database overload.
- Backup fisik dari database jika terjadi hal yang tidak dapat dihindarkan seperti bencana alam atau pencurian.
- Pengecekan atau review database sistem secara berkala untuk mengetahui kelemahan-kelemahan dari database.
Banyak dari organisasi mengembangkan Database Security mereka sendiri dengan filosofi keamanan yang cocok dengan perusahaan mereka selain dari pengaplikasian basic security system. Desain keamanan untuk suatu database biasa juga meliputi bagian administrasi dan pembatasan akses user ke dalam suatu sistem.
Akses Kontrol
Salah satu cara yang paling umum dalam penggunaan Database Security adalah dengan akses kontrol. Akses kontrol mendasar pada pemberian atau pengambilan privilege (akses) ke dalam suatu database system. Privilege diberikan kepada user tanpa harus memberi akses penuh ke dalam suatu database. Akses tertentu hanya boleh diberikan jika suatu pekerja tidak mampu melaksanakan pekerjaan atau tugasnya tanpa akses tersebut. Pemberian privilege (akses) secara berlebihan dapat menyebabkan terjadinya kompromi data. User yang menciptakan objek dari database biasanya mendapatkan akses penuh ke seluruh fungsionalitas database. DBMS dapat mencatat setiap level akses yang tersedia ke user-user yang ada.
View
Penggunaan view sering juga dipakai untuk menyembunyikan atribut tertentu dari suatu database. Dengan menggunakan fungsi View, suatu organisasi dapat mnyembunyikan data sensitif tanpa sepengetahuan user.
Backup
Keamanan database yang baik pasti memiliki backup atau recovery system untuk mengantisipasi hal yang tidak bisa dihindarkan. DBMS dapat membuat kopian dari database secara periodik dan disimpan secara berkala. Hal ini dilakukan agar jika terjadi kegagalan sistem yang menyebabkan data hilang, user atau admin dapat dengan mudah mengembalikan kembali data yang hilang.
Enkripsi
Enkripsi data melindungi data sensitif yang ada di dalam suatu database. Data yang terenkripsi tergolong lebih aman dari ancaman dari pihak luar. Namun untuk mengakses data tersebut, DBMS perlu memecahkan kode enkripsi sehingga performa dari database system dapat berkurang. Enkripsi biasa menggunakan algoritma khusus untuk mengubah data text menjadi data ciphertext yang tergolong kompleks.
Referensi
https://en.wikipedia.org/wiki/Database_security
https://www.techopedia.com/definition/29841/database-security
Database Systems: A Practical Approach to Design, Implementation, and Management, 6th Edition