Database Security
Database Security
Overview
Tindakan backup adalah salah satu aspek penting dari operasi sistem
komputer. Mendapatkan data yang valid, complete, up-to-date, adalah hal
utama yang diinginkan selalu, saat sebuah basis data sedang diakses. Namun
kesalahan seperti bugs, kecelakaan, malapetaka akibat human-error, dan
serangan ke basis data adalah sesuatu hal yang kadangkala sulit untuk
diprediksi namun dapat dicegah bila dilakukan tindakan preventif sedini
mungkin. Dengan melakukan tindakan back-up data secara periodik, hal-hal
yang sewajarnya bisa dihindari dapat direalisasikan sehingga user dapat
melakukan perbandingan antara sistem di saat sekarang sedang berjalan
dengan hasil bac-up data sebelumnya. Dengan demikian akan ada tindakan
analisa apakah telah terjadi perubahan data pada sistem ataukah masih
berjalan sewajarnya.
Tujuan
Konsep Pemrograman 1
PAGE 10
basis data
4. Mahasiswa memahami yang dimaksud back-up dan recovery dan
manfaatnya untuk keamanan basis data
Konsep Pemrograman 2
PAGE 10
(computer networks) akan mempercepat user untuk melakukan akses ke basis
data.
Dengan adanya koneksi ke basis data dari segala arah, menyebabkan beberapa
hal baru yang mengkhawatirkan muncul seperti:
Membuka potensi lubang keamanan untuk disusupi oleh penyadap (mata-
mata)
User dihadapkan kepada pilihan: keamanan (secure) atau kenyamanan
(comfortable).
Meningkatnya jumlah host yang digunakan seiring jumlah user yang
memiliki otoritas menyebabkan, lebih banyak server yang harus ditangani;
sehingga membutuh lebih banyak SDM yang handal dan tersebar; padahal
susah mencari SDM yang diinginkan berdasar kebutuhan, untuk itu
dilakukan desentralisasi server.
Konsep Pemrograman 3
PAGE 10
Application security, memfokuskan kepada aplikasi itu sendiri (yang
digunakan untuk basis data atau yang menjadi antar-muka kepada basis
data), beserta aplikasi dukungan lainnya kepada basis data itu sendiri.
Computer security, memfokuskan kepada keamanan dari komputer (end
system) yang digunakan, khususnya hardware pada komputer tersebut.
Integrity
Tindakan bagaimana agar informasi tidak berubah tanpa ijin seperti:
Tampered (data baru menimpa data lama)
Altered (perubahan terhadap nilai data yang eksis, yakni data ter-edit)
Modified (data yang eksis dapat disisipkan, ditambah, dihapus oleh
data baru)
Khususnya melakukan proteksi terhadap serangan: spoof, virus, trojan
horse.
Authentication (otentifikasi)
Tindakan otentifikasi dilakukan untuk meyakinkan keaslian data, sumber
data yang diakses, user yang mengakses data, serta server yang digunakan,
dengan melakukan cara seperti: penggunaan digital signature, dan
biometrics.
Ini dilakukan untuk memproteksi terhadap serangan seperti password
palsu.
Availability
Artinya, informasi harus dapat tersedia ketika dibutuhkan, dengan
menghindari server dibuat hang, down, crash.
Tindakan ini bertujuan untuk proteksi terhadap serangan: Denial of
Service (DoS) attack.
Non-repudiation
Non-repudiation maksudnya menghindari akses-user agar tidak dapat
menyangkal bahwa telah melakukan transaksi; dengan cara setiap akhir
transaksi pada form dilengkapi dengan penggunaan digital signature.
Konsep Pemrograman 4
PAGE 10
Hal ini dilakukan untuk proteksi terhadap serangan: deception.
Access control
Dengan adanya access control, maka ada sebuah mekanisme yang
digunakan untuk mengatur user dan akses yang dilakukan oleh user (siapa
boleh melakukan apa).
Beberapa caranya seperti:
Dengan menggunakan password.
Membuat kelas / klasifikasi privillege user.
Ini bertujuan untuk melakukan proteksi terhadap serangan: intruder.
Batasan privillege-user untuk Access Control pada basis data ditunjukkan pada
skema berikut ini:
Konsep Pemrograman 5
PAGE 10
Gambar 8.1 Pembatasan akses pada basis data
Master File (File Induk): dalam sebuah aplikasi, file ini merupakan file yang
penting karena berisi record-record yang sangat perlu di dalam organisasi.
Transaction File (File Transaksi): digunakan untuk merekam data hasil dari
transaksi yang terjadi.
Report File (File Laporan): berisi informasi-informasi yang akan ditampilkan.
History File (File Sejarah): berisi data masa lalu yang sudah tidak aktif lagi,
namun masih tetap disimpan sebagai arsip.
Backup File (File Pelapis): salinan dari file-file yang masih aktif di dalam basis
data pada suatu saat tertentu
Hirarki organisasi data dapat ditunjukkan sebagai berikut:
Konsep Pemrograman 6
PAGE 10
Database yaitu kelompok dari arsip-arsip yang berhubungan.
Gambar 8.3 Skema Akses dan Prosedur pada Basis Data yang terkoneksi on-
line
Konsep Pemrograman 7
PAGE 10
Perlunya keamanan menyeluruh pada Basis Data disebabkan keamanan
merupakan suatu proteksi terhadap pengrusakan data dan pemakaian data
oleh user yang tidak memiliki otoritas.
Oleh sebab itu untuk menjaga keamanan Basis Data dibutuhkan beberapa
cara seperti:
Penentuan perangkat lunak Basis Data Server yang handal.
Pemberian otoritas kepada user mana saja yang berhak mengakses, serta
memanipulasi data-data yang ada.
Gambar 8.4 Skema Lapisan pada Basis Data yang dinterkoneksikan dengan
aplikasi sistem utama
In-Secure
ENKRIPSI Eksternal ENKRIPSI
Network
Remote Client
Server DBMS
Otorisasi FIREWALL
Dan Akses
Konsep Pemrograman 9
PAGE 10
Pemberian wewenang atau hak istimewa (privilege) untuk mengakses
sistem basis data.
Kendali otorisasi (=kontrol akses) dapat dibangun pada perangkat lunak
dengan 2 fungsi, yaitu:
Mengendalikan sistem atau obyek yang dapat diakses
Mengendalikan bagaimana user menggunakannya
Sistem administrasi yang bertanggungjawab untuk memberikan hak akses
dengan membuat user account.
Sedangkan yang dimaksud dengan Tabel View pada keamanan basis data adalah
metode pembatasan bagi user untuk mendapatkan model basis data yang
sesuai dengan kebutuhan pengguna.
Metode ini dapat menyembunyikan data yang tidak digunakan atau tidak perlu
dilihat oleh user.
Konsep Pemrograman 10
PAGE 10
Contoh perintah menggunakan SQL:
GRANT : memberikan wewenang kepada pemakai
Syntax : GRANT <priviledge list> ON <nama relasi/view> TO <pemakai>
Contoh :
GRANT SELECT ON S TO BUDI
GRANT SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
Konsep Pemrograman 11
PAGE 10
Fasilitas logging (log-book) dengan membuat track pada tempatnya saat
transaksi berlangsung dan pada saat database berubah.
Fasilitas checkpoint, melakukan update database yang terbaru.
Manager pemulihan, memperbolehkan sistem untuk menyimpan ulang
database menjadi lebih konsisten setelah terjadinya kesalahan.
Rangkuman
1. Pernyataan 1
2. Pernyataan 2
3. Pernyataan 3
4. l
5. l
Konsep Pemrograman 12
PAGE 10
Pilihan Ganda
Latihan
Konsep Pemrograman 13
PAGE 10
Konsep Pemrograman 14
PAGE 10