Anda di halaman 1dari 23

TUGAS BASIS DATA

PROTEKSI DATA

Oleh : Hafizh
Fitrianna
( 06022009 )

PROGRAM STUDI TEKNIK ELEKTRO


FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS AHMAD DAHLAN
YOGYAKARTA
2009
Mengelola Keamanan Data
 Tujuan keamanan database : melindungi data dari ancaman yang disengaja atau
tidak disengaja tehadap akses dan integritas
 Ancaman bertambah karena adanya akses melalui Internet atau teknologi
bergerak

Sistem Basis Data ( DBMS / Database Management System )


DBMS merupakan perantara antara user dengan basis data yang tersimpan dalam disk.
Cara berkomunikasi keduanya diatur dalam suatu bahasa khusus yang ditetapkan oleh
perusahaan pembuat DBMS. Bahasa itu disebut Bahasa Basis Data. Contoh; SQL,
dBase, QUEL.
 Data Definition Language (DDL)
 Data Manipulation Language (DML)
– Prosedural
– Non Prosedural
•DBMS (Database Management System):kumpulan program yang digunakan
user untuk me-management database (create, maintain)
•DBMS mencakup proses:
 Defining: database mendefiniskan tipe data, struktur dan
batasan
(constraint) dari data yang disimpan dalam database.
 Manipulating: database mencakup berbagai fungsi dan query
untuk mendapatkan data yang dicari, termasuk operasi insert,
update dan delete serta dalam generate report data.
 Sharing: database dapat diatur untuk dapat sharing multiple user
dan program untuk mengakses database secara bersama-sama.
Fungsi yang lebih penting dari DBMS adalah proteksi dan maintain database dalam
jangka panjang.
 Proteksi: mengandung system protectionyang
menangani kondisi malfunction (crash) baik pada hardware ataupun
software, juga mengandung security protectionyang menangani pengaksesan
oleh user terlarang.
 Maintain: mengandung sistem maintaining yang selalu
meningkatkan kebutuhan perubahan tiap waktu.
 Jadi,Sistem Database: database dan sistem manajemen database-
nya
(DBMS)

Controlling Redundancy
 Redundancy: duplikasi data, penyimpanan data secara berulang.
 Redudancy salah satu syarat larangan dalam database
relasional, karena akan menimbulkan inconsistensi data.
 Dengan controlling redundancy, selain akan
meningkatkan performance query juga menjaga konsistensi data.
Restricting Unauthorized Access
 Memberikan pengaturan hak akses / batasan akses user database
Providing Persistent Storage for Program Objects
 Menyediakan ruang penyimpanan khusus untuk obyek-obyek program (ex.
Object-Oriented Database system yang menyimpan obyek-obyek
pemrograman berbasis obyek).
Providing Storage Structures for Efficient Query Processing
 Menyediakan struktur penyimpanan yang bagus untuk
efisiensi proses query.
•Providing Backup and Recovery
•Providing Multiple User Interface
•Representing Complex Relationship among Data
•Enforcing Integrity Constraints
•Permitting Inferencing and Actions using Rules

Ancaman terhadap keamanan data


 Kehilangan yang tidak disengaja
 Bisa diakibatkan oleh
• Kesalahan manusia
• Kesalahan sotware
• Kegagalan hardware
 Penyusupan
 Pengaksesan dilakukan oleh orang yang tidak berhak
 Bisa mengubah atau tidak mengubah data
 Kehilangan Privasi atau Kerahasiaan
 Kehilangan privasi berarti kehilangan proteksi yang dirasakan oleh
seseorang
 Kehilangan kerahasiaan berarti kebocoran data yang bersifat penting bagi
perusahaan
 Kehilangan Integritas Data
 Bila integritas dilanggar, data menjadi tidak valid atau bahkan rusak
 Bisa menimbulkan kesalahan dalam pengambilan keputusan
 Kehilangan Ketersediaan
 Bisa disebabkan sabotase pada H/W, jaringan, dan aplikasi
 Penetrasi virus yang dimaksud merusak data
 Mencakup
 Prosedur dan kebijakan administratif
 Proteksi fisik
 Proteksi perangkat lunak manajemen data

Prinsip Dasar Sekuriti


 Sistem sebaiknya bersifat publik
 Nilai default tidak boleh diakses
 Pengecekan otoritas
 Memberikan setiap proses kemamapuan akses sesedikit mungkin
 Mekanisme proteksi sederhana, uniform dan buil in ke lapis terbawah
 Skema pengamanan harus dapat diterima secara psikologis
Aspek Dari Security
• Confidentiality
• Integrity
• Availability
• Ketiga di atas sering disingkat menjadi CIA
• Ada tambahkan lain
– Non-repudiation
– Authentication
– Access Control
– Accountability
Confidentiality / Privacy
• Kerahasiaan data. Data hanya boleh diakses oleh orang yang berwenang
– Data-data pribadi
– Data-data bisnis; daftar gaji, data nasabah
– Sangat sensitif dalam e-commerce dan healthcare
• Serangan : penyadapan (teknis dengan sniffer / logger, man in the middle attack;
non-teknis dengan social engineering)
• Proteksi: enkripsi
Integrity
• Informasi tidak boleh berubah (tampered, altered, modified) oleh pihak yang tidak
berhak
• Serangan
– Pengubahan data oleh orang yang tidak berhak, spoofing
– Virus yang mengubah berkas
• Proteksi:
– Message Authentication Code (MAC), digital signature / certificate, hash
functions, logging
Availability
• Informasi harus tersedia ketika dibutuhkan
• Serangan
– Meniadakan layanan (Denial of Service / DoS attack) atau menghambat
layanan (server dibuat lambat)
• Proteksi
– Backup, redundancy, DRC, BCP, firewall
Non-repudiation
• Tidak dapat menyangkal (telah melakukan transaksi)
– Menggunakan digital signature
– Logging
Authentication
• Meyakinkan keaslian data, sumber data, orang yang mengakses data, server yang
digunakan
– what you have (identity card)
– what you know (password, PIN)
– what you are (biometric identity)
• Serangan: identitas palsu, terminal palsu, situs gadungan
Access Control
• Mekanisme untuk mengatur siapa boleh melakukan apa
– Membutuhkan adanya klasifikasi data: public, private, confidential, (top)
secret
– Role-based access
Accountability
• Dapat dipertanggung-jawabkan
• Melalui mekanisme logging dan audit
• Adanya kebijakan dan prosedur (policy & procedures)
Teori Jenis Serangan

Intruder (1/ 5)
Kategori Umum
1. Iseng-iseng, biasanya pada yang bisa diakses semua user
2. Snooping, seseorang masuk ke dalam sistem jaringan dan berusaha menebus
pengamanan
3. Berusaha mencari keuntungan dengan motivasi uang
4. Spionase/militer

Intruder (2/ 5)
 Interupsi
 Sumberdaya sistem komputer dihancurkan atau menjadi tak tersedia
 Penghancuran harddisk
 Pemotongan kabel komunikasi
 Sistem file management menjadi tidak tersedia
Intruder (3/ 5)
 Intersepsi
 Pihak tak diotorisasi dapat mengakses sumberdaya
 Ancaman terhadap kerahasiaan data
 Penyadapan terhadap data di jaringan
 Mengkopi file tanpa diotorisasi

Intruder (4/ 5)
 Modification
 Mengubah nilai-nilai file data
 Mengubah program sehingga bertindak secara beda
 Memodifikasi pesan-pesan yang ditransmisikan pada jaringan
Intruder (5/ 5)
 Fabrication
 Pihak tak diotorisasi menyisipkan objek palsu ke sistem
 Memasukkan pesan-pesan palsu ke jaringan
 Penambahan record ke file

Topologi Lubang Keamanan

Aspek Keamanan Sistem


 Kerahasiaan (Secrecy)
 Integritas (Integrity)
 Ketersediaan (Availability)
Proteksi S/W Manajemen Data
 View atau subskema
 Domain, cek, dan kontrol integritas yang lain
 Aturan otorisasi
 User-defined procedure
 Prosedur enkripsi
 Skema otentikasi
 Backup, journaling, dan checkpointing (memfasilitasi prosedur recovery)
Aturan Otorisasi
 Aturan otorisasi : kontrol yang melekat dalam sistem manajemen data yang
membatasi akses thd data dan tindakan-tindakan yang dapat dilakukan oleh orang.
Contoh, orang yang berhak mengakes data bisa membaca seluruh database tetapi
tidak bisa mengubah data

Contoh Aturan Otorisasi


Su O Ti K
bje bj nd e
Ba D M L
gia at en i
n a a m
Ba D M T
gia at en a
n a gh k
Ba D M T
gia at e a
n a m k
P ba a
Pe
e ca d

Implementasi Aturan Otorisasi


 Perintah SQL GRANT dipakai untuk menentukan otorisasi akses data
 Perintah SQL REVOKE dipakai untuk mencabut otorisasi
Contoh Skenario Hak Akses
pemakai

Hak akses bebas: semua tabel


dalam database pegawai
arif

Hak akses SELECT: semua


tabel dalam database
novi pegawai
Hak akses SELECT dan INSERT:
khusus tabel bagian dalam
adit
database pegawai

• Hak akses SELECT: tabel


infoprib dan bagian dalam
terra
database pegawai
• Hak akses SELECT: tabel
pekerjaan dalam database
pegawai khusus kolom nip dan
kode_bag
• Hak akses INSERT: tabel
pekerjaan dalam database
pegawai khusus kolom nip dan
kode_bag

Contoh Skenario Hak Akses


 Contoh menciptakan user:
CREATE USER arif
IDENTIFIED BY '007arif';

 Contoh memberikan hak akses ke arif:


GRANT ALL ON pegawai.* TO arif;

Hak Akses pada MySQL


Ha Ket
k era
SE Hak
LE
aks
CT
es
ini
IN me
Hak
SE
aks
RT
es
UP Hak
DA akse
ope
rasi
DE Hak
LE
aks
TE
IN es
Hak
DE
aks
X
DR es
Hak
OP
aks
es
EX Hak
EC
aks
UT
E es
yan
FILHak
E
aks
es
AL yan
Hak
TE
aks
R
es
LO yan
Hak
CK
aks
TA
BL Me
AL es
L
mbe
GR rika
Me
AN mu

Hak Akses
 Memberikan hak akses SELECT saja:
GRANT SELECT
ON pegawai.* TO novi;

Membatasi Hak Akses pada Kolom Tertentu


GRANT SELECT
ON pegawai.infoprib TO terra;
GRANT SELECT
ON pegawai.bagian TO terra;
GRANT SELECT (nip, kode_bag), UPDATE (nip, kode_bag)
ON pegawai.pekerjaan TO terra;

Enkripsi
 Enkripsi: Suatu pengodean atau pengacakan data dengan tujuan orang tidak bisa
membacanya
 Implementasi enkripsi:
 Satu kunci (Contoh DES-Data Encryption Standard)
 Dua kunci (Contoh SSL –Secure Socket Layer)
Skema Otentikasi
 Skema otentikasi digunakan untuk menentukan seseorang apakah orang yang
berhak atau tidak untuk mengakses sistem
 Perwujudan yang biasa dilakukan:
 Melalui identifikasi yang diketahui oleh dirinya sendiri berupa password
atau PIN
 Menggunakan alat seperti smartcard
 Menggunakan sesuatu yang bersifat unik, seperti sidik jari
Autentikasi Pemakai
 Suatu yang diketahui pemakai :
 passsword
 kombinasi kunci
 nama kecil ibu, dsb
 Sesuatu yang dimiliki pemakai :
 badge
 kartu identitas
 kunci, dsb
 Sesuatu mengenai (merupakan ciri) pemakai :
 sidik jari
 sidik suara
 foto
 tanda tangan, dsb
Contoh Autentikasi (1/ 3)

 Password
LOGIN : ken LOGIN : carol
PASSWORD : FooBar INVALID LOGIN NAME
SUCCESSFUL LOGIN LOGIN :
(a) (b)

LOGIN : carol
PASSWORD : Idunno
INVALID LOGIN
LOGIN :
(c)
(a) Login berhasil
(b) Login ditolak setelah nama dimasukkan
(c) Login ditolak setelah nama dan password dimasukkan

Contoh Autentikasi (2/3 )


 Menggunakan Objek Fisik
Magnetic cards
 magnetic stripe cards
 chip cards: stored value cards, smart cards
Contoh Autentikasi (3/ 3)
 Menggunakan Biometric

Backup dan Recovery


 Database backup: adalah mekanisme untuk melakukan penyalinan database ke
suatu media eksternal
 Database recovery: Mekanisme untuk memulihkan database dengan cepat dan
akurat setelah mengalami kerusakan
Fasilitas Recovery Dasar
 Fasilitas backup, menyediakan mekanisme untuk menyalin keseluruhan/sebagian
database
 Fasilitas penjurnalan, menjaga audit trail thd transaksi dan perubahan database
 Fasilitas checkpoint, menunda semua pemrosesan dan melakukan sinkronisasi
terhadap file-file dan jurnal untuk membentuk titik pemulihan
 Manajer recovery, memungkinkan pengembalian database ke kondisi yang benar
dab memulai pemrosesan transaksi
Fasilitas Penjurnalan
 Menyediakan audit trail terhadap transaksi dan perubahan database
 Pada saat kegagalan pada sistem terjadi, keadaan database yang konsisten dapat
dikembalikan lagi dengan menggunakan informasi jurnal dan data backup
 Catatan transaksi (transaction log) berisi:
 Identitas transaksi
 Data transaksi
 Tipe transaksi (misalnya: Insert)
 Waktu transaksi
 Identitas terminal atau pemakai
 Nilai data yang dimasukkan
 Tabel dan record yang diakses
 Record-record yang terubah
 Nilai lama dan nilai baru

 Catatan perubahan database (database change log) berisi:


 Salinan record sebelum dan sesudah transaksi
 Before-image: salinan sebuah record sebelum dimodifikasi
 After-image: salinan sebuah record sesudah dimodifikasi

Prosedur Recovery dan Restart


 Disk mirroring (RAID 1)
 Restore/Rerun
 Suatu teknik untuk memproses kembali transaksi harian sampai titik
kegagalan berdasarkan salinan backup database
 Pertama-tama, database dihentikan
 Kemudian, backup terbaru dihubungkan ke database dan seluruh transaksi
setelah penyalinan dijalankan kembali
 Menjaga integritas transaksi
 Menggunakan model transaksi
 Transaksi diawali dengan START TRANSACTION dan diakhiri dengan
COMMIT/ROLLBACK
Restore/Rerun
 Keuntungan
 Sederhana
 Tidak perlu menciptakan jurnal perubahan
 Tidak perlu prosedur restart
 Kelemahan
 Waktu untuk memproses transaksi mungkin lama
 Transaksi baru perlu ditunda
 Ada kemungkinan hasil transaksi menjadi berbeda dengan aslinya
Disaster Recovery
 Setiap organisasi harus memiliki mekanisme disaster recovery
 Untuk mengantisipasi kehancuran pada pusat data
 Bisa diakibatkan bencana alam atau manusia (perang, sabotase)
 DBA mempunyai peran dalam membuat rencana recovery

Mengontrol Akses Bersama


 DBMS memiliki kontrol konkurensi
 Kontrol konkurensi : proses pengelolaan terhadap akses yang dilakukan oleh
sejumlah orang dengan tujuan agar integritas data dapat terjaga dengan baik
 Penanganan yg biasa dilakukan: Locking
 Penguncian bisa pada level database, tabel, atau record
 Jenis locking:
 Shared lock
 Exclusive lock
 Problem penguncian: deadlock
 Deadlock: Keadaan yang membuat dua buah transaki saling menunggu karena
masing-masing mengunci data yang diperlukan transaksi pasangannya
Menangani Deadlock
 Ada dua cara:
 Deadlock prevention
• Program harus mengunci semua record yang diperlukan di awal
transaksi
• Jika record telah terkunci, pemakai lain haru menunggu sampai
penguncian dilepaskan
 Deadlock resolution
• Menyerahkan sepenuhnya penanganan deadlock kepada DBMS
Mengelola Kualitas Data
 Data berkualitas tinggi:
 Akurat
 Konsisten
 Tersedia pada waktu yang tepat
 Fakta yang menunjukkan bahwa menjaga data yang berkualitas tinggi itu sulit:
 2% record dalam data pelanggan kedaluarsa dalam satu bulan karena hal-
hal seperti:
• Pelanggan meninggal
• Pelanggan berpindah lokasi
• Pelangan bercerai dsb

Problem Kualitas Data


 Sumber data eksternal
 Data yang berasal dari pihak luar mungkin tidak akurat, alah, atau tidak
lengkap
 Penyimpanan data yang redundan
 Data tersebar dalam berbagai bentuk (spreadsheet, database, dokumen)
dan ada kemungkinan tidak konsisten dan tidak kompatibel
 Kekurangan Komitmen Organisasi
 Pemakai internal tidak patuh terhadap aturan-aturan yang telah ditetapkan
dan organisasi membiarkannya
Usaha untuk Menjaga Kualitas Data
 Membentuk komite yang menjamin bahwa kualitas data terjaga dengan baik
 Menerapkan prinsip TQM untuk selalu meningkatkan kualitas data
 Mengatasi hambatan-hambatan dalam organisasi
Mengatur Kinerja Database
 Ada 5 hal yang perlu diperhatikan agar kinerja database terjaga dengan baik:
1. Pemasangan DBMS
2. Pemakaian memori
3. Penggunaan I/O
4. Penggunaan CPU
5. Tuning aplikasi

Pemasangan DBMS
 Instalasi DBMS harus benar-benar sesuai dengan lingkungan
 Biasanya tertera dalam file README
 Penggunaan nilai default untuk parameter tertentu seringkali membuat kinerja
yang tidak optimal
 Sebelum melakukan instalasi DBMS, DBA harus memastikan ketersediaan ruang
hard disk
Pemakaian Memori
 Supaya efisien, penggunaan memori oleh DBMS perlu juga diperhatikan
 Sebagai contoh, sistem Oracle menggunakan memori untuk menaruh data
dictionary.
 Bila memori tidak cukup, sistem akan sering membaca struktur tabel dari disk.
Hal ini mempengaruhi kinerja sistem
Penggunaan I/O
 Aplikasi database berpengaruh besar terhadap I/O
 Walapun kecepatan CPU tinggi, I/O tidak bersifat proporsional
 Suatu objek yang sering diakses secara bersamaan dapat dibagi ke dalam
beberapa disk
Penggunaan CPU
 Hampir semua operasi database memerlukan aktivitas CPU
 Penggunaan CPU perlu dimonitor ketika melakukan tuning database
 Pemakaian lebih dari CPU merupakan alternatif untuk memperbaiki kinerja
sistem
 Pemantauan perlu dilakukan pada saat beban puncak ataupun saat beban rendah
Tuning Aplikasi
 Selain penyetelan DBMS, aplikasi pun perlu diatur
 Memperhatikan dan memodifikasi SQL dalam aplikasi kadang perlu dilakukan
 Perubahan SQL dalam aplikasi acapkali dapat meningkatkan kinerja sistem
 Kadangkala penyelesaian dari masalah ini adalah dengan menggunakan
denormalisasi
 Kadangkala DBA perlu melakukan tindakaan seperti reindexing, mengubah
ukuran blok data, mengalokasikan file-file pada peranti penyimpan.
 DBA juga mempunyai peran dalam mengarahkan pemrogram dengan
memberikan teknik yang paling efektif dalam berinteraksi dengan database
DAFTAR PUSTAKA

1. Basis Data, Kartika Firdausy, Universitas Ahmad Dahlan


2. Tim Teaching Grant Mata Kuliah Sistem Operasi ( google.com )
3. Ramakrishnan ( google.com )
4. Umi Salamah ( google.com )
5. “Pengantar Database”, faried Irmansyah, IlmuKomputer.com
6. Budi Rahardjo, http://budi.insan.co.id
7. Abdul Kadir ( google.com )

Anda mungkin juga menyukai