Pengamanan Basis data - info tips and tricks

Download Report

Transcript Pengamanan Basis data - info tips and tricks

Pengamanan Basis data
Pendahuluan
Pelanggaran Basis data Di Kelompokan
menjadi 2 aksi:
Disengaja
Tidak disengaja.
Pelanggaran Basis data:
A. Disengaja.
- Pembacaan data yang tidak diizinkan
- Pengubahan data yang tidak diizinkan
- Penghapusan data yang tidak diizinkan
Pelanggaran Basis data:
B. Tidak Disengaja.
- Sistem rusak (Crash) selama proses transaksi
- Inkonsistensi Basis data akibat akses banyak user.
- Inkonsistensi Basis data akibat pendistribusian ke
banyak komputer (Client).
- Kesalahan lojik (kesalahan aplikasi) Yang melanggar
integritas yang seharusnya dipelihara.
Pengamanan basis data
Level pengamanan Basis data:
• Fisik: Lokasi sistem komputer
• Manusia: Otoritas user dibatasi
• Sistem Operasi.
• Jaringan (network)
• Sistem basis data.
Pengamanan Basis data
Terdiri dari 2 aspek:
A. Pengamanan basis data
( Database Security)
B. Pemeliharaan Integritas basis data
(Database integrity)
A. Pengamanan Basis data
A1. Pemberian otoritas
A2. Perintah SQL untuk pengamanan Basis data
A3. Penyandian( Enkripsi)
A1. Pemberian otoritas
• Memberikan otoritas pada sejumlah pemakai
(user) dalam mengakses basis data.
Antara lain Operator, supervisor atau
administrator.
A2. Perintah SQL untuk pengamanan
Basis data
• Perintah utama pemberian otorisasi ini
adalah: Grant dengan sintax :
Grant<daftar otoritas> on < nama objek basis
data> To <daftar user>
- <daftar otoritas>: klausa otoritas
- < nama objek basis data>: dapat berupa
tabel/view
- <daftar user>: User pemakai
Contoh: Grant insert on Mahasiswa to ali, ani
A3. Penyandian ( Enkripsi)
Teknik enkripsi yang baik memiliki kriteria:
- Pemakai yang memiliki otoritas dapat dengan
mudah melakukan penyandian dan
pemecahannya.
- Skema enkripsi yang digunakan tidak tergantung
kerahasian algoritma /program enkripsi dan
dekripsi tetapi tergantung pada parameter
algoritma sebagai kunci enkripsinya.
- Sangat sukar untuk ditebak kunci enkripsi yang
digunakan.
B. Pemeliharaan Integritas basis data
Terdiri dari 2 yaitu:
B1. Jenis jenis Integritas Basis data
B2. Pemaksaan Integritas
B1. Jenis jenis Integritas Basis data
• Integritas Entitas:
Tidak boleh ada baris duplikat dalam satu tabel.
• Integritas jangkauan nilai:
Tidak ada item data yang melanggar jangkauan nilai
ditiap kolom.
• Integritas acuan: Yang menjaga relasi/korespondensi
antar tabel.
• Integritas data antar tabel: dimana disebuah tabel
tidak terulang tabel yang lain.
• Integritas aturan nyata: dimana data disuatu tabel
harus memiliki nilai yang layak dan dapat diterima
sistem basis data.
B2. Pemaksaan Integritas
• Definisi tabel dan struktur penyimpanan.
Type data,nilai,null dll.
• Penerapan aturan integritas
Dalam SQL perintahnya:
Create assertion<nama-assertion>check<predikat>
Contoh: kita membuat aturan tidak boleh mengambil sks
lebih dari 20.
create assertion no_exist
check (not exist ( select sum (sks)
From nilai a, kuliah b
Where a. kode_kul-b.kul=b.kode_kul
Group by semester having sum (sks)>20)
B2. Pemaksaan Integritas
• Penggunaan mekanisme pembangkitan aksi
untuk menjaga integritas.Dalam mekanisme
ini kita harus:
- Menentukan kondisi yang menimbul
pembangkitan aksi (triger)
- Menenentukan aksi yang akan
dikerjakan(Procedure)
Contoh: Define trigger hapus_mahasiswa on
delete of mahasiswa a (delete from nilai
where nim=old a.nim)
B2. Pemaksaan Integritas
• Penerapan aturan integritas dalam script
aplikasi. Aturan integritas dapat pula kita
terapkan disisi aplikasi, dan bukannya disisi
DBMS.
• Penerapan aturan integritas dalam objek
objek aplikasi.
Kondisi ini sangat tergantung pada fasilitas
yang disediakan oleh development toolnya.