Anda di halaman 1dari 47

KEAMANAN

BASISDATA
Mengapa masalah keamanan basis data menjadi
penting?
• Kemampuan menyediakan informasi dengan
cepat dan akurat, merupakan kebutuhan dalam
information-based society.
• Sangat pentingnya informasi hanya boleh
diakses oleh orang yang terotorisasi.
• Adanya trend trade-secret; curi informasi  ada
nilai ekonomis
• Keamanan merupakan suatu proteksi terhadap
pengrusakan data dan pemakaian data oleh pemakai
yang tidak punya kewenangan.
• Untuk menjaga keamanan Basis Data dgn :
• Penentuan perangkat lunak Data Base Server yang handal.
• Pemberian Otoritas kepada user mana saja yang berhak
mengakses, serta memanipulasi data-data yang ada.
Pendahuluan
• Awalnya sebuah komputer disebut PC (Personal
Computer), namun seiring dengan perkembangan
bidang jaringan komputer, maka sebuah
komputer tidak tepat lagi disebut PC, melainkan
shared-computer digunakan untuk menyimpan
classified-information.
• Dengan adanya LAN (computer networks) akan
mempercepat akses.
• Basis Data mulai terhubung ke jaringan komputer
• Membuka potensi lubang keamanan.
• Security vs kenyamanan (comfortable).
• Lebih banyak server yang harus ditangani dan butuh lebih
banyak SDM yang handal dan tersebar; padahal susah
mencari SDM, untuk itu dilakukan desentralisasi server.
Potensi ancaman
Klasifikasi Keamanan Basis Data:
• Keamanan yang bersifat fisik (physical security).
• Keamanan yang berhubungan dengan orang (personel).
• Keamanan dari data dan media serta teknik komunikasi.
• Keamanan dalam operasi.
Aspek untuk dukungan keamanan Basis Data:

• Network security  fokus kepada saluran pembawa


informasi.
• Application security  fokus kepada aplikasi itu
sendiri.
fokus kepada keamanan dari
• Computer security 
komputer (end system) yang digunakan.
Aspek keamanan basis data:

• Privacy / confidentiality
• Integrity
• Authentication
• Availability
• Non-repudiation
• Access control
11

Prinsip pengamanan
kerahasiaan

Security
Principles
Integritas ketersediaan

• Kerahasiaan menjamin perlindungan akses informasi


• Keterpaduan menjamin bahwa informasi tidak dapat
diubah
• Ketersediaan menjamin kesiapa kesiapan akses
informasi
12

contoh
• Kerahasiaan: catatan medis pasien harus tertutup untuk
umum
• Integritas: catatan medis harus benar
• Ketersediaan: catatan medis pasien dapat diakses saat
dibutuhkan untuk pengobatan
Aspek kehandalan
• Privacy / confidentiality
• Proteksi data bersifat pribadi yang sensitif seperti:
• Nama, tempat tanggal lahir, agama, hobby, penyakit
yang pernah diderita, status perkawinan
• Data pelanggan
• Transaksi pada e-commerce
• Proteksi terhadap serangan sniffer.
Aspek kehandalan : Integrity
• Informasi tidak berubah tanpa ijin seperti:
• Tampered (menimpa data lama)
• Altered (perubahan nilai data edited)
• Modified (disisipkan, ditambah, dihapus)

• Proteksi terhadap serangan: spoof, virus, trojan horse.


Aspek kehandalan : Authentication
• Meyakinkan keaslian data, sumber data, orang yang
mengakses data, server yang digunakan:
• penggunaan digital signature, biometrics.

• Proteksi terhadap serangan: password palsu.


Aspek kehandalan : Availability
• Informasi harus dapat tersedia ketika dibutuhkan:
• server dibuat hang, down, crash.

• Proteksi terhadap serangan: Denial of Service (DoS) attack.


Aspek kehandalan : Non-repudiation
• Tidak dapat menyangkal (telah melakukan transaksi):
• menggunakan digital signature.

• Proteksi terhadap serangan: deception.


Aspek kehandalan : Access Control
• Mekanisme untuk mengatur siapa boleh melakukan apa:
• biasanya menggunakan password.
• adanya kelas / klasifikasi privillege user.

• Proteksi terhadap serangan: intruder.


Batasan Privillege-user untuk Access Control
pada Basis Data:

Pengguna Akhir Programmer / Database


 Menggunakan hak Operator Administrator
akses orang lain.
 Melihat & menutup  Membuat Password.  Kebijakan
data yang tidak  Membuat program keamanan &
diotorisasi yang tidak aman prosedur
 Staf tidak di-training  Staf yang tidak di-
 Pemasukan data training.
yang dilakukan oleh  Kebijakan
yang tidak berhak. keamanan &
 Virus prosedur
 pemerasan  Pemogokan staf
Jenis Serangan (attack)
• Interruption: penghentian sebuah proses yang sedang
berjalan.
• Interception: menyela sebuah proses yang sedang
berjalan.
• Modification: mengubah data tanpa ijin dari pihak
otoritas.
• Fabrication: perusakan secara mendasar pada sistem
utama.
Perlunya keamanan menyeluruh pada Basis Data :

• Keamanan merupakan suatu proteksi terhadap


pengrusakan data dan pemakaian data oleh user yang
tidak memiliki otoritas.
• Untuk menjaga keamanan Basis Data dibutuhkan:
• Penentuan perangkat lunak Basis Data Server yang
handal.
• Pemberian otoritas kepada user mana saja yang
berhak mengakses, serta memanipulasi data-data
yang ada.
Skema Akses dan Prosedur pada Basis
Data yang terkoneksi on-line:
Perangkat keras
Kebakaran, banjir, bom,
pencurian, listrik, gempa, radiasi,
kesalahan mekanisme keamanan

Jaringan
Komunikasi
Kabel yang tidak
terkoneksi, radiasi
DBMS dan Program
Database Aplikasi
Aturan / amandemen Kesalahan mekanisme
yang tidak diotorisasi, keamanan
penduplikatan data, Akses yang terlalu luas
pencurian data, Pencurian program
kehilangan data akibat Kesalahan program
gangguan listrik
Skema Lapisan pada Basis Data yang
dinterkoneksikan dengan aplikasi sistem utama

user

Middle-end units
DBMS

Front-end system
Back-end system
Penyalahgunaan Database :
• Tidak disengaja, misalnya sebagai berikut:
• kerusakan selama proses transaksi
• keadaan yang disebabkan oleh akses database yang
konkuren
• keadaan yang disebabkan oleh pendistribuasian data
pada beberapa komputer
• logika error yang mengancam kemampuan transaksi
untuk mempertahankan konsistensi database.
• Disengaja oleh pihak yang tidak ada otoritas, seperti
misalnya:
• Pengambilan data / pembacaan data
• Pengubahan data
• Penghapusan data
Tingkatan Pada Keamanan Basis Data

• Physical  lokasi-lokasi dimana terdapat sistem


komputer haruslah aman secara fisik terhadap serangan
destroyer.
• User  wewenang user harus dilakukan dengan berhati-
hati untuk mengurangi kemungkinan adanya manipulasi
oleh user lain yang otoritas.
• Sistem Operasi  kelemahan entitas ini
memungkinkan pengaksesan data oleh user tak
berwenang, karena hampir seluruh jaringan sistem basis
data berjalan secara on-line.
• Sistem Basisdata  Pengaturan hak pengguna yang
baik.
Skema Utama Mekanisme Keamanan
Basis Data on-line
In-Secure
ENKRIPSI Eksternal ENKRIPSI
Network
Remote Client

Server DBMS

Otorisasi FIREWALL
Dan Akses

Secure Local Client


Internal
Network
(Intranet)
Database
27

Pertahanan
• Menggunakan pendekatan berlapis:
• Meningkatkan deteksi resiko serangan
• Mengurangi kesempatan berhasilnya penyerangan

Data enkripsi

Aplikasi Pembakuan aplikasi, antivirus


Pembakuan OS, pengelolaan jalur,
Host
autentikasi
Jaringan internal IPSec, NIDS

Perimeter Firewalls, VPN quarantine

Kemanan fisik pengawasan, kunci, penandaan


peralatan
Kebijakan, Prosedur, &
Kepedulian Pembelajaran user
Alasan dibutuhkan otoritas pada keamanan basis
data:
• Pemberian wewenang atau hak istimewa (privilege)
untuk mengakses sistem basis data.
• Kendali otorisasi (=kontrol akses) dapat dibangun pada
perangkat lunak dengan 2 fungsi :
• Mengendalikan sistem atau obyek yang dapat
diakses
• Mengendalikan bagaimana user menggunakannya
• Sistem administrasi yang bertanggungjawab untuk
memberikan hak akses dengan membuat user account.
Tabel View pada keamanan basis data:
• Merupakan 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.
Untuk Beberapa tingkat pengamanan pada
Basis Data Relasional
• Relasi user diperbolehkan atau tidak diperbolehkan
mengakses langsung suatu relasi.
• View user diperbolehkan atau tidak diperbolehkan
mengakses data yang terapat pada view.
• Read Authorization user diperbolehkan membaca data,
tetapi tidak dapat memodifikasi.
• Insert Authorizationuser diperbolehkan menambah data
baru, tetapi tidak dapat memodifikasi data yang sudah
ada.
• Update Authorization  user diperbolehkan memodifikasi
data, tetapi tidak dapat menghapus data.
• Delete Authorization user diperbolehkan menghapus
data.
Otorisasi tambahan untuk Modifikasi Data (Update
Authorization):
• Index Authorization  user diperbolehkan membuat
dan menghapus index data.
• Resource Authorization  user diperbolehkan membuat
relasi-relasi baru.
• Alteration Authorization  user diperbolehkan
menambah/menghapus atribut suatu relasi.
• Drop Authorization  user diperbolehkan menghapus
relasi yang sudah ada.
Contoh perintah menggunakan SQL :
GRANT : memberikan wewenang kepada pemakai

Syntax :

GRANT <priviledge list> ON <nama relasi/view> TO


<pemakai>
GRANT SELECT ON S TO BUDI
Contoh :
GRANT SELECT,UPDATE (STATUS,KOTA) ON S TO ALI,BUDI
Contoh perintah menggunakan SQL :
REVOKE : mencabut wewenang yang dimiliki oleh pemakai

Syntax : REVOKE <priviledge list> ON <nama relasi/view>


FROM <pemakai>

Contoh :

REVOKE SELECT ON S FROM BUDI

REVOKE SELECT,UPDATE (STATUS,KOTA) ON S FROM ALI,BUDI

Priviledge list : READ, INSERT, DROP, DELETE, INDEX,


ALTERATION, RESOURCE
Back-up data dan recovery :
• Back-up : proses secara periodik untuk mebuat duplikat
dari basisdata dan melakukan logging file (atau program)
ke media penyimpanan eksternal.
• Recovery : merupakan upaya uantuk mengembalikan
basis data ke keadaaan yang dianggap benar setelah
terjadinya suatu kegagalan
Cara mudah menerapkan
keamanan
• Memberi semua pengguna akses maksimum, tetapi
kelemahannya adalah adanya kemungkinan
kehilangan atau penyalahgunaan data.
• Pengguna basisdata harus mempunyai akses yang
cukup untuk melaksanakan pekerjaannya. Dengan
kata lain, akses yang diberikan kepada pengguna
harus sekecil mungkin untuk menghindari masalah.
Tingkatan Akses
• Apabila pengguna diberi identitas pengguna, mereka
dapat mengakses basisdata secara langsung ke dalam
jaringan melalui aplikasi client-server
• Novell dapat mengontrol account sistem operasi dan
account basisdata. Sistem Administrator maupun
Administrator Basisdata mempunyai potensi
melakukan kesalahan.
Tingkatan akses ke suatu sistem informasi:
• Pengguna Super (root pada Unix, Admin pada Novell)
• Pemilik Basisdata
• Pemilik Skema
• Pengguna Akhir
• Pengguna super adalah account pada sistem operasi
yang mempunyai Privilege paling banyak. Pengguna
super memiliki akses ke semua file yang disimpan pada
sistem
• Pemilik basisdata memiliki akses ke semua file yang
berhubungan dengan software basisdata dan file data
pada suatu sistem.Meskipun pemilik basisdata dibatasi
pada file-file yang berhubungan dengan basisdata, tetapi
kita perlu mengingat bahwa sebagian file pada sebagian
sistem berhubungan dengan basisdata
• Pemilik skema adalah pembuat dan pemilik objek-objek
basisdata yang digunakan untuk aplikasi
pengguna.Pemilik skema mempunyai akses tak terbatas
ke seluruh objek skema dan bertanggungjawab
mengontrol akses ke account pengguna lainnya.
• Pengguna akhir mempunyai akses paling sedikit
meskipun basisdata dibuat untuk pengguna akhir.
Hubungan pengguna dengan basisdata
• Pengguna dalam suatu basisdata dapat pula mengakses
basisdata lainnya dengan menghubungkan dua basisdata.
Hubungan keduanya akan menghubungkan pengguna pada
basisdata pertama ke pengguna pada basisdata kedua.
• Kemudian, pengguna pada basisdata pertama dapat
mengakses basisdata kedua dengan privilege yang dimiliki
pengguna pada basisdata kedua. Hubungan basisdata
merupakan tool yang sangat berguna, tetapi harus diatur untuk
memastikan tool tidak disalahgunakan
Privilege
• Privilege digunakan untuk mengontrol akses pengguna.
Privilege terdapat pada tingkatan sistem operasi, basisdata, dan
aplikasi.
• Privilege basisdata mengontrol akses pengguna dalam
lingkungan basisdata seperti manipulasi struktur basisdata dan
akses ke objek skem
Privilege dalam basisdata relasional :

Privilege sistem
• Sistem terdiri atas hal-hal yang memungkinkan
pengguna melakukan tugasya pada ruang lingkup
basisdata
• Privilege sistem meliputi kemampuan membuat tabel,
menghapus tabel, mengubah struktur tabel, membuat
indeks dan view, dan memanipulasi account pengguna
• Privilege sistem berbeda-beda antara satu perangkat
lunak basisdata relasional dengan yang lainnya
Lanjutan........
• Privilege objek memungkinkan pengguna melakukan
tugasnya pada ruang lingkup skema
• Privilege objek meliputi kemampuan mengambil
data dari tabel dan memanipulasi data tabel
• Privilege objek :
• SELECT - memungkinkan data diambil dari table.
• INSERT - memungkinkan pembentukan baris data baru pada tabel.
• UPDATE - memungkinkan data yang sudah ada dalam tabel untuk
dimodifikasi.
• REFERENCES - memungkinkan kolom dalam tabel untuk diacu
kolom lain (seperti melalui kunci tamu).
• USAGE - memungkinkan penggunaan domain tertentu.
Proses pengaturan akses pengguna akhir melalui
privilege basisdata

Anda mungkin juga menyukai