INTEGRITAS DATA
Integritas data adalah jaminan konsistensi data terhadap
semua status constraint yang diberlakukan
terhadap data tersebut, sehingga memberikan jaminan ke absahan data itu sendiri.
Integritas data sangat erat kaitannya
dengan keamanan keberadaan data, dimana dapat terjadi secara
institusional atau asidental. Keuntungan menggunakan Integritas data :
-
Lebih
murah dan mudah menjaga data integrity
di level database dibandingkan dengan aplikasi lain.
-
Bugs
akibat isi database yang tidak valid
sulit untuk ditemukan(dapat muncul dikemudian hari.)
Dalam integritas data ada dua hal penting yang harus diketahui
agar data tetap akurat, konsisten dan
handal. Untuk mewujudkan
hal itu diperlukan
suatu data Integrity.
Sebagai contoh apabila
sebuah tabel Mahasiswa,
pada field /
kolom nim mempunyai
isi data “01031043”, maka
database tidak memperbolehkan record pada tabel Mahasiswa lain mempunyai nim yang sama.
Integritas
data dapat di kelompokkan sebagai berikut:
1. Entity integritas
2. Domain integritas
3. Refferential integritas
4. User defined integritas
1. Entity
Integritas
Entity integritas mendefenisikan sebuah baris sebagai sebuah entitas yang unik untuk suatu
tabel. Entity integritas memaksa integritas
dari colum atau primary key dari suatu tabel (melalui index,unique,constrains,primarykey)
tidak boleh null.
2. Domain
integritas
Domain Integritas merupakan validasi
dari masukan untuk sebuah kolom. Anda dapat memaksa domain integritas dengan
membatasi tipe (melalui data types), format (melalui check
constraints dan rules),
atau range nilai-nilai
yang mungkin (melalui Foreign Key Constraints, Check
Constraints, Default Definitions dan rules).
3.Refferential
Integritas
Refferential
integritas memastiakn bahwa seluruh nilai dari foreign key cocok dengan nilai primary
key yamng dihubungkan.
4. User Defined integritas
User difined integritas mengizinkan kita untuk menentukan spesific
business rules sendiri yang tidak sama pada kategori integrity yang lain
CONCURENCY
Tujuan utama dalam pengembangan
database adalah membuat banyak pengguna bisa mengakses data secara bersamaan.
Pengaksesan data ini tidak bermasalah jika semua pengguna hanya membaca data
dan mereka tidak mengganggu satu sama lain. Tapi ketika dua pengguna atau lebih
mengakses database yang sama secara bersamaan dan salah satu melakukan
perubahan terhadap data, maka hal ini akan dapat menimbulkan adanya data yang
tidak konsisten (inconsistency data). Untuk mengatasi adanya kemungkinan inconsistency
data, maka dibutuhkan adanya suatu mekanisme yang mengatur jalannya
transaksi pengaksesan data yang sama tersebut. Mekanisme ini dikenal dengan
istilah concurrency control. Concurrency control adalah
proses pengaturan operasi–operasi dalam banyak transaksi yang berjalan secara
simultan pada database tanpa mengganggu operasi pada transaksi lainnya sehingga
dapat menghasilkan data yang konsisten ( Connolly, 2005, p577 ). Tiga contoh
masalah penting yang terkait oleh concurrency, yaitu masalah Lost-Update,
masalah Uncommitted Dependency, dan masalah Inconsistent Analysis.
TRANSAKSI
Transaksi
adalah satu atau beberapa aksi program aplikasi yang mengakses/mengubah isi basis
data.Transaksi merupakan bagian dari pengeksekusian sebuah program yang
melakukan pengaksesan basis data dan bahkan juga melakukan serangkaian
perubahan data. DBMS yang kita gunakan
harus menjamin bahwa setiap transaksi harus dapat dikerjakan secara utuh atau
tidak sama sekali. Tidak boleh ada
transaksi yang hanya dikerjakan sebagian, karena dapat menyebabkan
inkonsistensi basis data. Untuk itu
transaksi selalu merubah basis data dari satu kondisi konsisten ke kondisi
konsisten lain. Untuk menjamin agar
integritas dapat tetap terpelihara maka setiap transaksi harus memiliki
sifat-sifat:
1.
Atomik, dimana semua operasi dalam
transaksi dapat dikerjakan seluruhnya atau tidak sama sekali.
2.
Konsisten, dimana eksekusi transaksi
secara tunggal harus dapat menjamin data tetap konsisten setelah transaksi
berakhir.
3.
Terisolasi, jika pada sebuah sistem basis
data terdapat sejumlah transaksi yang dilaksanakan secara bersamaan, maka semua
transaksi yang dilaksanakan pada saat yang bersamaan tersebut harus dapat
dimulai dan bisa berakhir.
4.
Bertahan, dimana perubahan data yang
terjadi setelah sebuah transaksi berakhir dengan baik, harus dapat bertahan
bahkan jika seandainya sistem menjadi mati.
KEAMANAN BASIS DATA
Keamanan
merupakan suatu proteksi terhadap pengerusakan data dan pemakaian data oleh pemakai
yang tidak punya kewenangan. Untuk menjaga keamanan Basis Data dapat dilakukan dengan:
(1) Penentuan perangkat lunak database server yang handal (2) Pemberian
otoritas kepada user mana saja yang berhak mengakses, serta memanipulasi data-data
yang ada.
a. Otorisasi :
·
Pemberian Wewenang atau hak istimewa
(priviledge) untuk mengakses sistem atau obyek database
·
Kendali otorisasi (=kontrol akses) dapat
dibangun pada perangkat lunak dengan 2 fungsi :
·
Mengendalikan sistem atau obyek yang dapat
diakses
·
Mengendalikan bagaimana pengguna
menggunakannya
·
Sistem administrasi yang bertanggungjawab
untuk memberikan hak akses dengan membuat account pengguna.
b. Tabel View :
·
Merupakan metode pembatasan bagi pengguna
untuk mendapatkan model database yang sesuai dengan kebutuhan perorangan.
Metode ini dapat menyembunyikan data yang tidak digunakan atau tidak perlu
dilihat oleh pengguna.
·
Contoh pada Database relasional,untuk pengamanan
dilakukan beberapa level:
1.
Relasi à
pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung suatu relasi
2.
View à
pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang terapat
pada view
3.
Read Authorization à pengguna diperbolehkan membaca data, tetapi tidak dapat memodifikasi.
4.
Insert Authorization à pengguna diperbolehkan menambah data baru, tetapi tidak dapat
memodifikasi data yang sudah ada.
5.
Update Authorization à pengguna diperbolehkan memodifikasi data, tetapi tidak dapat
menghapus data.
6.
Delete Authorization à pengguna diperbolehkan menghapus data.
·
Untuk Modifikasi data terdapat otorisasi
tambahan :
1.
Index Authorization à pengguna diperbolehkan membuat dan menghapus index data.
2.
Resource Authorization à pengguna diperbolehkan membuat relasi-relasi baru.
3.
Alteration Authorization à pengguna diperbolehkan menambah/menghapus atribut suatu relasi.
4.
Drop Authorization à pengguna diperbolehkan menghapus relasi yang sudah ada.
Tujuan keamanan
Basis Data
·
Secrecy/Confidentiality:
Informasi tidak boleh diungkapkan kepada pengguna yang tidak sah. Sebagai
contoh, mahasiswa seharusnya tidak diperbolehkan untuk memeriksa nilai siswa
lainnya.
·
Integrity: Hanya pengguna yang berwenang
harus diizinkan untuk memodifikasi data. Sebagai contoh, siswa mungkin
diperbolehkan untuk melihat nilai mereka, namun tidak diperbolehkan (jelas)
untuk memodifikasi mereka.
·
Availability: Pengguna yang terdaftar
tidak boleh ditolak akses. Sebagai contoh, seorang instruktur yang ingin
mengubah kelas harus diizinkan untuk melakukannya
Tingkatan Keamanan
Pada Database
1.
Fisikal : lokasi-lokasi dimana terdapat sistem
komputer haruslah aman secara fisik terhadap serangan perusak.
2.
Manusia : wewenang pemakai harus dilakukan
dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai
yang berwenang
3.
Sistem Operasi : Kelemahan pada SO ini
memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh
jaringan sistem database menggunakan akses jarak jauh.
4.
Sistem Database : Pengaturan hak pemakai
yang baik.
Referensi
Tidak ada komentar:
Posting Komentar