Sekuriti dan integritas data base

25
SISTEM BASIS DATA SEKURITI DAN INTEGRITAS BASIS DATA KELOMPOK 3 : 1. DESI SURYAHTI 2. ERLYTA 3. NOVICA 4. NURHAYATI 1 erl_idw

Transcript of Sekuriti dan integritas data base

Page 1: Sekuriti dan integritas data base

erl_idw 1

SISTEM BASIS DATASEKURITI DAN INTEGRITAS BASIS DATA

KELOMPOK 3 :

1. DESI SURYAHTI2. ERLYTA3. NOVICA4. NURHAYATI

Page 2: Sekuriti dan integritas data base

erl_idw 2

Data yang disimpan dalam basis data perlu dilindungi dari akses yang tidak diijinkan, perusakan/ pengubahan yang merugikan, serta timbulnya inkonsistensi tak sengaja.

Pelanggaran dalam pemakaian basis data dapat

dikelompokan ke dalam aksi yang disengaja dan aksi yang tidak disengaja.

Bentuk-bentuk akses yang secara sengaja :

• Pembacaan data yang tidak diizinkan.• Pengubahan data yang tidak diizinkan.• Penghapusan / perusakan data yang tidak diizinkan.

SEKURITI DAN INTEGRITAS BASIS DATA

Page 3: Sekuriti dan integritas data base

erl_idw 3

Inkonsistensi data secara tidak sengaja disebabkan oleh :

• Sistem rusak (crash) selama pemrosesan transaksi.

• Inkonsistensi basis data akibat dari banyak user ke basis data yang tidak terjaga dengan baik.

• Inkonsistensi basis data karena adanya pendistribusian data ke banyak komputer.

• Kesalahan aplikasi yang melanggar integritas yang semestinya dipelihara agar basis data tetap konsisten.

Page 4: Sekuriti dan integritas data base

erl_idw 4

Beberapa level dalam pengamanan basis data, yaitu : Fisik Manusia Sistem Operasi Jaringan Sistem basis data

2 Jenis otoritas/ijin user dalam pengaksesan pada basis data :1. Ketidakbolehan, contohnya seorang pemakai tidak

diperbolehkan untuk melakukan pembuatan tabel basis data.

2. Kebolehan, contohnya seorang pemakai diperbolehkan untuk melakukan perubahan isi sebuah tabel basis data.

Sekuriti Basis Data (Database Scurity)

Page 5: Sekuriti dan integritas data base

erl_idw 5

Otoritas dapat diberikan pada objek basis data berikut ini : Tabel/Relasi

user dapat melihat, menambah, menghapus atau mengubah data pada suatu tabel.

Indeksuser diberi ijin atau tidak untuk melakukan pembuatan atau penghapusan indeks dari sebuah tabel

Viewuser diberi ijin atau tidak untuk melakukan akses untuk kemunculan data dari suatu view.

- Contoh pembuatan view:Create view semua_kuliah as( select kode_kul, nama_kul from kuliah_d3 )Union( select kode_kul, nama_kul from kuliah_s1 )

Page 6: Sekuriti dan integritas data base

erl_idw 6

GRANTPerintah utama untuk pemberian otorisasi :Grant <daftar otoritas> on <nama objek basis data> to <daftar user>

- Contoh :Grant insert on mahasiswa to ali, aniGrant update (nim, nama_kul) on nilai to ketut, diahGrant select, insert on all to bonarGrant all on kuliah to ujangGrant select on mahasiswa to public Grant all on mahasiswa to andi with grant option

Perintah SQL untuk Sekuriti Basis Data

Page 7: Sekuriti dan integritas data base

erl_idw 7

Revoke Perintah untuk pembatalan otoritas bagi seorang/beberapa pamakai :

Revoke <daftar otoritas> on <nama objek basis data> from <daftar user>

- Contoh :revoke update (nim, nama_kul) on nilai from ketut, diahrevoke select, insert on all from bonarrevoke select on mahasiswa from publicrevoke delete on kuliah from ujangrevoke insert on mahasiswa from alirevoke grant option for all on mahasiswa from andi

Page 8: Sekuriti dan integritas data base

erl_idw 8

Batasan integritas data adalah syarat yang dispesifikasikan pada basis data untuk membatasi data yang dapat disimpan di dalam basis data.

DBMS “memaksakan” Batasan integritas sehingga menjamin bahwa perubahan – perubahan yang akan dilakukan oleh orang yang memang mempunyai otorisasi tidak akan melanggar konsistensi data.

Pemeliharaan Integritas Basis Data (Database Integrity)

Page 9: Sekuriti dan integritas data base

erl_idw 9

Batasan integritas dispesifikasikan dan “dipaksakan” pada waktu yang berbeda, yaitu :

Ketika DBA mendefinisikan skema basis data melalui DDL, DBA menspesifikasikan batasan yang harus selalu dipenuhi.

Ketika aplikasi basis data dijalankan, DBMS melakukan pemeriksaan untuk mencegah terjadinya pelanggaran dan mencegah perubahan–perubahan yang melanggar konstrain integritas yang telah ditentukan sebelumnya.

Dalam kondisi tertentu, DBMS tidak melarang suatu aksi yang dapat menimbulkan pelanggaran, namun kemudian DBMS membuat tindakan-tindakan otomatis untuk tetap memenuhi konstrain integritas, dengan demikian dijamin perubahan tidak akan menunggu integritas data.

Page 10: Sekuriti dan integritas data base

erl_idw 10

Model relasional Integritas data meliputi:

1. Integritas Entitas(Entity Integrity)

2. Integritas Domain (Domain Integrity)

3. Integritas Referensial/acuan (Referential Integrity)

4. Integritas data atar tabel (redundant data

Integrity)

5. Integritas aturan nyata (business rule Integrity)

Page 11: Sekuriti dan integritas data base

erl_idw 11

Integritas entitas mendefinisikan sebuah baris sebagai sebuah entitas yang unik untuk suatu tabel.

Integritas entitas memaksa integritas dari colum atau primary key dari suatu tabel melalui index, unique, constrains, primary key, dimana primary key tidak boleh null.

Dalam Integritas entitas, tidak ada baris yang duplikat didalam satu tabel.

Integritas Entitas (Entity Integrity)

Page 12: Sekuriti dan integritas data base

erl_idw 12

Berikut contoh sintaksnya :

create table Pembelian

( IDPembelian smallint,

IDModel smallint,

Deskripsi Model varchar(40),

primary key(IDPembelian));

create table Pembelian

(IDPembelian smallint,

IDModel smallint,

DeskripsiModel varchar(40),

primary key(IDPembelian)

unique(IDPembelian,IDModel));

Page 13: Sekuriti dan integritas data base

erl_idw 13

Domain adalah batasan dimana tidak ada item data yang melanggar jangkauan nilai di tiap kolom.

Batas tipe integritas domain (melalui data types), format (melalui check constraints dan rules), atau range nilai–nilai yang mungkin (melalui Foreign Key Constrains, Check Constraints, Default Definitions dan Rules).

Jenis domain yang dapat dimiliki oleh suatu atribut:◦ Karakter bebas ◦ Alphanumerik◦ Alphabet◦ Numerik

Integritas Domain (Domain Integrity)

Page 14: Sekuriti dan integritas data base

erl_idw 14

Pemeliharaan integritas domain :◦ Pendefinisian skema/struktur tabel◦ Pemanfaatan properti field◦ Penerapan proses validasi pada pemasukan data

Contoh sintaksnya :

create table biografi(idpenulis smallint not null,tahunlahir year not null,kotalahir varchar (40) not null default ‘kosong’);

create domain nilai numeric (3,2)constraint value-testcheck(value> = 0.00)

Page 15: Sekuriti dan integritas data base

erl_idw 15

Contoh lain sintaksnya :

Pendefinisian domain berikut akan membatasi nilai yang mungkin untuk atribut yang menggunakan domain ini agar hanya dapat diisi dengan nilai integer di antara 1 hingga 9

create domain semester integerconstraint semester-validcheck(value > 0 and value < 10)

Page 16: Sekuriti dan integritas data base

erl_idw 16

Integritas Referensial memastikan bahwa seluruh nilai dari foreign key cocok dengan nilai primary key yang dihubungkannya.

Artinya, tipe data dan ukuran sama, Konsistensi tetap terjaga ketika ada penghapusan, pergantian data dan penambahan data pada tabel.

Ketika integritas referensial ini dilaksanakan maka akan mengecek:

Penambahan record apakah record yang ditambahkan pada foreign key ada dalam primary key atau tidak.Perubahan data pada primary key apakah akan mempengaruhi terhadap foreign key atau tidak.

Integritas Referensial (Referential Integrity)

Page 17: Sekuriti dan integritas data base

erl_idw 17

Opsi ketika suatu record pada tabel yang direferensi oleh suatu foreign key dihapus atau diganti nilainya:

[ ON DELETE { CASCADE | NO ACTION } ][ ON UPDATE { CASCADE | NO ACTION } ]

ON DELETE, merupakan tindakan pada tabel yang direferensi terjadi penghapusan record.

ON UPDATE, merupakan tindakan apabila data tabel yang direferensi mengalami perubahan nilai record.

Tindakan yang dapat diatur pada ON DELETE maupun ON UPDATE ada dua, yaitu:◦ CASCADE◦ NO ACTION

Page 18: Sekuriti dan integritas data base

erl_idw 18

ON UPDATE CASCADE Jika nilai primary key pada tabel yang direferensi diganti maka foreign key pada tabel yang mereferensiakan disamakan nilainya dengan primary key pada tabel yang direferensi.

ON DELETE CASCADE Jika nilai primary key pada tabel yang direferensi dihapus maka semua record yang nilai foreign key-nya = primary key pada tabel yang direferensi dimana recordnya yang dihapus akan turut terhapus.

ON UPDATE NO ACTION Jika nilai primary key pada tabel yang direferensi diganti maka foreign key pada tabel yang mereferensi nilainya tidak ikut berubah.

ON DELETE NO ACTION Jika nilai Primary Key pada tabel yang direferensi dihapus maka semua record yang nilai foreign key-nya = primary key tidak ikut dihapus.

Page 19: Sekuriti dan integritas data base

erl_idw 19

Contoh sintaknya :

create table customer(customer-name char(20),customer-street char(30),customer-city char(30),primary key (customer-name))

create table branch(branch-name char(15),branch-city char(30),assets integer,primary key (branch-name))

Page 20: Sekuriti dan integritas data base

erl_idw 20

create table account(account-number char(10),branch-name char(15),balance integer,primary key (account-number),foreign key (branch-name) references branch)

create table depositor(customer-name char(20),account-number char(10),primary key(customer-name, account-number),foreign key(account-number)references account,foreign key(customer-name)references customer)on delete cascade on update cascade

Page 21: Sekuriti dan integritas data base

erl_idw 21

Sebuah check digit adalah digit tambahan yang ditambahkan ke nomor sehingga, jika nomor berubah, kesalahan akan terdeteksi.

Metode Mulai dari kanan, kalikan digit pertama dengan 1, yang

kedua dengan 2 dst. Tambahkan hasil bersama-sama Gunakan digit terakhir dari hasil dan tambahkan ke

nomor terakhir.

Example: 56037 becomes 560372 Example: 50637 becomes 506376

Pengecekan Integritas data

Page 22: Sekuriti dan integritas data base

erl_idw 22

Verifikasi adalah memeriksa data yang telah disalin dari satu tempat ke tempat lain untuk melihat apakah ia masih sama.

Verification of keyed data mungkin melibatkan

pengetikan ulang-key tsb.

Double-entry verifikasi melibatkan 2 orang memasukkan di data yang sama dan kemudian membandingkan data untuk anomali.

Validasi adalah memeriksa data sebelum pengolahan untuk melihat bahwa data dapat diterima untuk proses dan meliputi:

◦ Cek tipe (misalnya numerik atau alfanumerik) ◦ Cek panjang (jumlah karakter yg benar)◦ Cek rentang (hari antar 1-31; bulan 1-12)

Page 23: Sekuriti dan integritas data base

erl_idw 23

Hal mengenai keamanan data (data security) sering

dibahas bersamaan dengan hal integritas data (data

integrity). Secara sederhana, keamanan berarti

mengamankan data terhadap user yang tidak berwenang

dan integritas berarti mengamankan data terhadap

user yang berwenang.

Kelemahan konsep tsb , apabila terdapat seorang user

biasa yang mengetahui peletakan peraturan akses yang

ditempatkan oleh DBA atau user berwenang maka user

biasa tersebut dapat saja mengubah isi dari peraturan

akses yang ada atau bahkan menghapusnya (masalah

keamanan).

RANGKUMAN

Page 24: Sekuriti dan integritas data base

erl_idw 24

Saran, dalam masalah DBA atau user yang berwenang juga

harus dapat memperhatikan alur informasi karena mungkin

saja peraturan akses yang dibuat menjadi menghambat

alur informasi database.

Page 25: Sekuriti dan integritas data base

erl_idw 25