Anda di halaman 1dari 23

LECTURE NOTES

ISYS6698
Introduction to Data and Information Management
Week ke - 5

Database Security and Recovery System

Introduction to Data and Information Management


LEARNING OUTCOMES

LO1: Describe database as the core of information system to business or organization

LO1 : Mahasiswa diharapkan mampu menjelaskan database sebagai inti dari sistem
informasi untuk bisnis atau organisasi

OUTLINE MATERI :

1. Threats
2. Countermeasures
3. Granting
4. DBMS and Web Security
5. Classification Failures
6. Recovery Concept
7. Shadow Paging

Introduction to Data and Information Management


ISI MATERI

A. Threats
Threat dapat disebabkan oleh situasi atau peristiwa yang melibatkan
seseorang, tindakan, atau keadaan yang mungkin dapat membahayakan organisasi.
Kerugian tersebut mungkin berwujud, seperti hilangnya perangkat keras, perangkat
lunak, atau data, atau tidak berwujud, seperti hilangnya kredibilitas atau kepercayaan
klien. Masalah yang dihadapi organisasi mana pun adalah mengidentifikasi semua
kemungkinan ancaman. Oleh karena itu, minimal, sebuah organisasi harus
menginvestasikan waktu dan upaya dalam mengidentifikasi ancaman yang paling
serius.
Setiap threat harus dilihat sebagai potensi pelanggaran keamanan yang, jika
berhasil, akan memiliki dampak tertentu. Tabel 5.1 menyajikan contoh berbagai jenis
threat, yang terdaftar di bawah area di mana ancaman tersebut mungkin berdampak.
Misalnya, “melihat dan mengungkapkan data yang tidak sah” sebagai threat dapat
mengakibatkan pencurian dan penipuan, hilangnya kerahasiaan, dan hilangnya privasi
bagi organisasi.
Tabel 5.1. Contoh threat
Threat Pencurian Kehilangan Kehilangan Kehilangan Kehilangan
dan kerahasiaan privasi integritas availibility
penipuan
Menggunakan
sarana akses Y Y Y
orang lain
Amandemen
atau penyalinan
Y Y
data yang tidak
sah
Perubahan
Y Y Y
program
Kebijakan dan
prosedur yang
tidak memadai
yang
Y Y Y
memungkinkan
campuran
output rahasia
dan normal
Penyadapan Y Y Y
Entri ilegal oleh
Y Y Y
peretas
Pemerasan Y Y Y

Introduction to Data and Information Management


Membuat
"trapdoor" ke Y Y Y
dalam sistem
Pencurian data,
program, dan Y Y Y Y
peralatan
Kegagalan
mekanisme
keamanan,
memberikan Y Y Y
akses yang lebih
besar dari
biasanya
Kekurangan
atau pemogokan Y Y
staf
Pelatihan staf
yang tidak Y Y Y Y
memadai
Melihat dan
mengungkapkan
Y Y Y
data yang tidak
sah
Interferensi
elektronik dan Y Y
radiasi
Kerusakan data
karena
kehilangan daya Y Y
atau lonjakan
listrik
Kebakaran
(kerusakan
listrik,
Y Y
sambaran petir,
pembakaran),
banjir, bom
Kerusakan fisik
Y Y
pada peralatan
Kabel putus atau
Y Y
tidak terkoneksi
Pengenalan
Y Y
virus
Sumber: Connolly (2015)

Introduction to Data and Information Management


Sejauh mana sebuah organisasi menderita sebagai akibat dari keberhasilan
threat tergantung pada sejumlah faktor, seperti adanya tindakan pencegahan dan
rencana darurat. Misalnya, jika terjadi kegagalan perangkat keras yang merusak
penyimpanan sekunder, semua aktivitas pemrosesan harus dihentikan hingga masalah
teratasi. Pemulihan akan bergantung pada sejumlah faktor, termasuk kapan backup
terakhir dilakukan dan waktu yang dibutuhkan untuk memulihkan sistem.
Organisasi perlu mengidentifikasi jenis ancaman yang mungkin dihadapi dan
untuk memulai rencana dan tindakan pencegahan yang tepat, dengan
mempertimbangkan biaya penerapannya. Jelas, mungkin tidak hemat biaya untuk
menghabiskan banyak waktu, tenaga, dan uang untuk ancaman potensial yang
mungkin hanya mengakibatkan ketidaknyamanan kecil. Bisnis organisasi juga dapat
mempengaruhi jenis ancaman yang harus dipertimbangkan, beberapa di antaranya
mungkin jarang terjadi. Namun, kejadian langka harus diperhitungkan, terutama jika
dampaknya akan signifikan. Ringkasan potensi ancaman terhadap sistem komputer
disajikan pada Gambar 5.1.

Gambar 5.1. Ringkasan potensi threat terhadap sistem komputer. Connoly (2015)

B. Countermeasures
Jenis penanggulangan ancaman pada sistem komputer berkisar dari kontrol
fisik hingga prosedur administratif. Terlepas dari berbagai kontrol berbasis komputer
yang tersedia, perlu dicatat bahwa secara umum, keamanan DBMS hanya sebaik
sistem operasi, karena keterkaitannya yang erat. Representasi dari lingkungan
komputer multi-pengguna yang khas ditunjukkan pada Gambar 5.2.

Introduction to Data and Information Management


Gambar 5.2. Representasi dari typical multi-user computer environment. Connoly (2015)

Di bagian ini kami berfokus pada kontrol keamanan berbasis komputer berikut untuk
lingkungan multi-pengguna (beberapa di antaranya mungkin tidak tersedia di
lingkungan PC):
1. Authorization
Authorization adalah pemberian hak atau privilege yang memungkinkan subjek
memiliki akses yang sah ke sistem atau objek sistem. Kontrol otorisasi dapat
dibangun ke dalam perangkat lunak dan mengatur tidak hanya sistem atau objek
apa yang dapat diakses oleh pengguna tertentu, tetapi juga apa yang dapat
dilakukan pengguna dengannya. Proses otorisasi melibatkan otentikasi subjek
(otentifikasi/authentification = Mekanisme yang menentukan apakah pengguna
adalah siapa yang dia klaim) yang meminta akses ke objek, di mana "subjek"
mewakili pengguna atau program dan "objek" mewakili tabel database, tampilan,
prosedur, pemicu, atau objek lain apa pun yang dapat dibuat dalam sistem.

2. Access Controls
Cara khas untuk menyediakan kontrol akses untuk sistem database didasarkan
pada pemberian dan pencabutan privilege. Privilege memungkinkan pengguna
untuk membuat atau mengakses (yaitu membaca, menulis, atau memodifikasi)
beberapa objek database (seperti relasi, tampilan, atau indeks) atau untuk
menjalankan utilitas DBMS tertentu. Privilege diberikan kepada pengguna untuk
menyelesaikan tugas yang diperlukan untuk pekerjaan mereka. Sebagai
pemberian berlebihan yang tidak perlu, privilege dapat membahayakan
keamanan: privilege harus diberikan kepada pengguna hanya jika pengguna

Introduction to Data and Information Management


tersebut tidak dapat menyelesaikan pekerjaannya tanpa privilege itu. Seorang
pengguna yang membuat objek database seperti relasi atau tampilan secara
otomatis mendapatkan semua privilege pada objek itu. DBMS selanjutnya
melacak bagaimana privilege ini diberikan kepada pengguna lain, dan mungkin
dicabut, dan memastikan bahwa setiap saat hanya pengguna dengan privilege
yang diperlukan yang dapat mengakses suatu objek.
a. Discretionary Access Control (DAC)
Sebagian besar DBMS komersial menyediakan pendekatan untuk mengelola
privilege yang menggunakan SQL yang disebut Discretionary Access
Control (DAC). Standar SQL mendukung DAC melalui perintah GRANT
dan REVOKE. Perintah GRANT memberikan privilege kepada pengguna,
dan perintah REVOKE menghilangkan privilege. DAC, meskipun efektif,
memiliki kelemahan tertentu. Secara khusus, pengguna yang tidak sah dapat
mengelabui pengguna yang berwenang untuk mengungkapkan data sensitif.
b. Mandatory Access Control (MAC)
Mandatory Access Control (MAC) didasarkan pada kebijakan di seluruh
sistem yang tidak dapat diubah oleh pengguna individu. Dalam pendekatan
ini setiap objek database diberikan class security dan setiap pengguna
diberikan izin untuk class security, dan aturan yang dikenakan pada
membaca dan menulis objek database oleh pengguna. DBMS menentukan
apakah pengguna tertentu dapat membaca atau menulis objek tertentu
berdasarkan aturan tertentu yang melibatkan tingkat keamanan objek dan
izin pengguna. Aturan-aturan ini berusaha untuk memastikan bahwa data
sensitif tidak pernah dapat diteruskan ke pengguna lain tanpa izin yang
diperlukan. Standar SQL tidak menyertakan dukungan untuk MAC.
c. Multilevel Relations and Polyinstantiation
Untuk menerapkan kebijakan MAC dalam DBMS relasional, class security
harus ditetapkan untuk setiap objek database. Objek bisa pada granularity
relasi, tupel, atau bahkan nilai atribut individual. Asumsikan bahwa setiap
tuple diberi class security. Situasi ini mengarah pada konsep multilevel
relation/relasi multilevel, yaitu relasi yang mengungkapkan tupel yang
berbeda kepada pengguna dengan izin keamanan yang berbeda. Kehadiran
objek data yang tampak memiliki nilai berbeda bagi pengguna dengan izin
berbeda disebut polyinstantiation.

3. Views
Mekanisme view menyediakan mekanisme keamanan yang kuat dan fleksibel
dengan menyembunyikan bagian database dari pengguna tertentu. Pengguna
tidak mengetahui keberadaan atribut atau baris apa pun yang hilang dari view.
View dapat didefinisikan pada beberapa relasi dengan pengguna yang diberikan
hak istimewa yang sesuai untuk menggunakannya, tetapi tidak untuk

Introduction to Data and Information Management


menggunakan relasi dasar. Dengan cara ini, menggunakan view lebih membatasi
daripada sekadar memiliki hak istimewa tertentu yang diberikan kepada
pengguna pada relasi dasar.

4. Backup Dan Recovery


Sebuah DBMS harus menyediakan fasilitas backup untuk membantu pemulihan
database setelah kegagalan. Selalu disarankan untuk membuat salinan cadangan
dari database dan file log secara berkala dan untuk memastikan bahwa salinan
berada di lokasi yang aman. Jika terjadi kegagalan yang membuat database tidak
dapat digunakan, salinan cadangan dan detail yang diambil dalam file log
digunakan untuk memulihkan database ke kondisi konsisten terbaru yang
memungkinkan.
Sebuah DBMS harus menyediakan fasilitas logging, kadang-kadang disebut
sebagai journal, yang melacak keadaan saat ini transaksi dan perubahan database,
untuk memberikan dukungan untuk prosedur pemulihan. Keuntungan
penjurnalan adalah bahwa jika terjadi kegagalan, database dapat dipulihkan ke
status konsisten terakhir yang diketahui menggunakan salinan cadangan database
dan informasi yang terkandung dalam file log. Jika tidak ada penjurnalan yang
diaktifkan pada sistem yang gagal, satu-satunya cara pemulihan adalah
memulihkan database menggunakan versi cadangan terbaru dari database.
Namun, tanpa file log, perubahan apa pun yang dilakukan setelah pencadangan
terakhir ke database akan hilang.

5. Integrity
Integrity constraint juga berkontribusi untuk memelihara sistem basis data yang
aman dengan mencegah data menjadi tidak valid, dan karenanya memberikan
hasil yang menyesatkan atau salah.

6. Encryption
Jika sistem basis data menyimpan data yang sangat sensitif, mungkin dianggap
perlu untuk menyandikannya sebagai tindakan pencegahan terhadap
kemungkinan ancaman eksternal atau upaya untuk mengaksesnya. Beberapa
DBMS menyediakan fasilitas enkripsi untuk tujuan ini. DBMS dapat mengakses
data (setelah decoding), meskipun ada penurunan kinerja karena waktu yang
dibutuhkan untuk decode itu. Enkripsi juga melindungi data yang dikirimkan
melalui jalur komunikasi. Ada sejumlah teknik untuk mengkodekan data untuk
menyembunyikan informasi; beberapa disebut "ireversibel" dan yang lain
"reversibel." Teknik ireversibel, seperti namanya, tidak mengizinkan data asli
diketahui. Namun, data tersebut dapat digunakan untuk memperoleh informasi
statistik yang valid. Teknik reversibel lebih umum digunakan. Untuk

Introduction to Data and Information Management


mengirimkan data dengan aman melalui jaringan yang tidak aman memerlukan
penggunaan cryptosystem/sistem kripto, yang meliputi:
a. Kunci enkripsi untuk mengenkripsi data (plaintext);
b. Algoritma enkripsi yang dengan kunci enkripsi mengubah plaintext menjadi
ciphertext;
c. Kunci dekripsi untuk mendekripsi ciphertext;
d. Algoritma dekripsi yang dengan kunci dekripsi mengubah ciphertext
kembali menjadi plaintext.

Salah satu teknik, yang disebut enkripsi simetris, menggunakan kunci yang sama
untuk enkripsi dan dekripsi dan bergantung pada jalur komunikasi yang aman
untuk bertukar kunci contoh Data Encription Standard (DES).
Jenis kriptosistem lain menggunakan kunci yang berbeda untuk enkripsi dan
dekripsi, dan disebut sebagai enkripsi asimetris, contoh public key
cryptosystems, RSA.

7. RAID (Redundant Array of Independent Disks) Technology


Perangkat keras yang menjalankan DBMS harus toleran terhadap kesalahan,
artinya DBMS harus terus beroperasi bahkan jika salah satu komponen perangkat
keras gagal. Ini menunjukkan memiliki komponen yang berlebihan yang dapat
diintegrasikan dengan mulus ke dalam sistem kerja setiap kali ada satu atau lebih
komponen yang gagal. Komponen perangkat keras utama yang harus toleran
terhadap kesalahan termasuk drive disk, pengontrol disk, CPU, catu daya, dan
kipas pendingin. Disk drive adalah komponen yang paling rentan, dengan waktu
tersingkat antara kegagalan salah satu komponen perangkat keras.
Salah satu solusinya adalah penggunaan teknologi Redundant Array of
Independent Disks (RAID). RAID bekerja dengan memiliki array disk besar yang
terdiri dari pengaturan beberapa disk independen yang diatur untuk
meningkatkan keandalan dan pada saat yang sama meningkatkan kinerja.

C. Granting
Seorang pengguna dapat memberikan hak aksesnya (otorisasi) kepada
pengguna lain hanya ketika DBA memberikan granting right kepada pengguna
tersebut. Seorang pengguna memiliki otorisasi jika ada jalur dari root (DBA) ke node,
yang mewakili pengguna.
Pertimbangkan contoh otorisasi penghapusan.

Gambar 5.3. Delete authorization untuk user 5. Satinder (2017)

Introduction to Data and Information Management


Pengguna 5 memiliki dua jalur yang dengannya dia bisa mendapatkan otorisasi
penghapusan :
1. DBA → User 2 → User 4 → User 5
2. DBA → User 1 → User 5.
Setelah beberapa saat jika DBA mencabut otoritas itu dari pengguna 1, maka
pengguna 5 dapat menggunakan jalur pertama

Gambar 5.4. Hapus otorisasi untuk pengguna 5 setelah DBA mencabut delete authority dari
pengguna 1. Satinder (2017)

Keuntungan, Membantu dalam memelihara database yang besar. Kerugian, Pengguna


dapat mencoba untuk mengalahkan pencabutan otorisasi.
Contoh lain : Pertimbangkan otorisasi seperti yang diberikan pada Gambar 5.5 berikut.

Gambar 5.5. Otorisasi pengguna. Satinder (2017)

Disini DBA memberikan kewenangan kepada pengguna 1, pengguna 2 dan pengguna


3. Pengguna 2 memberikan kewenangan kepada pengguna 1 dan sebaliknya. Setiap
saat jika DBA mencabut otoritas dari pengguna 2 maka itu bahkan memiliki otoritas
oleh pengguna 1.

Gambar 5.6. Modifikasi otorisasi pengguna. Satinder (2017)

Jadi, DBA harus berhati-hati saat memberikan privilege.

D. DBMS and Web Security


Komunikasi internet bergantung pada TCP / IP sebagai protokol yang
mendasarinya. Namun, TCP / IP dan HTTP tidak dirancang dengan memikirkan
tentang keamanan didalamnya. Tanpa perangkat lunak khusus, semua lalu lintas
Internet berjalan "jelas" dan siapa pun yang memantau lalu lintas dapat membacanya.
Maka bentuk serangan relatif mudah dilakukan dengan menggunakan perangkat lunak

Introduction to Data and Information Management


"packet sniffing" yang tersedia secara bebas, karena Internet secara tradisional telah
menjadi jaringan terbuka.
Oleh sebab itu tantangan yang ada adalah untuk mengirim dan menerima
informasi melalui Internet sambil memastikan bahwa:
1. Informasi tidak dapat diakses oleh siapa pun kecuali pengirim dan penerima
(privasi);
2. Informasi belum berubah selama transmisi (integritas);
3. Penerima dapat yakin itu berasal dari pengirim (keaslian);
4. Pengirim dapat memastikan bahwa penerima asli (nonfabrikasi);
5. Pengirim tidak dapat menyangkal dia mengirimnya (nonrepudiation).
Namun, melindungi transaksi hanya menyelesaikan sebagian dari masalah.
Setelah informasi telah mencapai server Web, itu juga harus dilindungi di sana.
Dengan arsitektur threetier yang populer di lingkungan Web, kita juga memiliki
kompleksitas untuk memastikan akses aman ke, dan dari, database. Saat ini, sebagian
besar arsitektur semacam itu dapat diamankan, tetapi umumnya membutuhkan produk
dan mekanisme yang berbeda.
Satu aspek keamanan lainnya yang harus ditangani di lingkungan Web adalah
bahwa informasi yang dikirimkan ke mesin klien mungkin memiliki konten yang
dapat dieksekusi (executable content). Konten yang dapat dieksekusi dapat melakukan
tindakan jahat berikut, dan tindakan berikut harus diambil untuk mencegahnya
melakukan:
1. MengKorup data atau status pelaksanaan program;
2. Memformat ulang disk lengkap;
3. Melakukan shutdown sistem total;
4. Mengumpulkan dan unduh data rahasia, seperti file atau kata sandi, ke situs lain;
5. Mengubah identitas dan tiru pengguna atau komputer pengguna untuk
menyerang target lain di jaringan;
6. Mengunci sumber daya sehingga tidak tersedia untuk pengguna dan program
yang sah;
7. Menyebabkan efek yang tidak fatal tetapi tidak diinginkan, terutama pada
perangkat output.
Di bagian ini kita akan membahas beberapa masalah yang terkait dengan
keamanan basis data yang berada dalam lingkungan berikut ini.
1. Proxy Server
Di lingkungan Web, server proxy adalah komputer yang berada di antara browser
Web dan server Web. Server proxy memiliki dua tujuan utama yaitu :
a. Meningkatkan kinerja
Karena server proksi menyimpan hasil dari semua permintaan untuk waktu
tertentu, itu dapat secara signifikan meningkatkan kinerja untuk kelompok
pengguna. Selain itu karena server proxy sering berada di jaringan yang sama
dengan pengguna, maka operasi dapat dilakukan dengan jauh lebih cepat.

Introduction to Data and Information Management


Server proxy nyata, seperti yang digunakan oleh Compuserve dan America
Online, dapat mendukung ribuan pengguna.
b. Memfilter request
Server proxy juga dapat digunakan untuk memfilter permintaan. Sebagai
contoh, sebuah organisasi mungkin menggunakan server proxy untuk
mencegah karyawannya mengakses satu set situs Web tertentu.

2. Firewalls
Saran keamanan standar adalah untuk memastikan bahwa server Web tidak
terhubung ke jaringan internal dan secara teratur dicadangkan untuk memulihkan
dari serangan yang tak terelakkan. Ketika server Web harus terhubung ke teknologi
firewall jaringan internal dapat membantu untuk mencegah akses yang tidak sah,
asalkan telah dipasang dan dipelihara dengan benar.
Firewall adalah sistem yang dirancang untuk mencegah akses tidak sah ke atau dari
jaringan pribadi. Firewall dapat diimplementasikan baik sebagai perangkat keras
dan perangkat lunak atau kombinasi keduanya. Mereka sering digunakan untuk
mencegah pengguna Internet yang tidak sah mengakses jaringan pribadi yang
terhubung ke Internet, terutama intranet. Ada beberapa jenis teknik firewall:
a. Packet filter, yang melihat setiap paket yang memasuki atau meninggalkan
jaringan dan menerima atau menolaknya berdasarkan aturan yang ditentukan
pengguna. Pemfilteran paket adalah mekanisme yang cukup efektif dan
transparan bagi pengguna, tetapi bisa sulit dikonfigurasi
b. Application gateway, yang menerapkan mekanisme keamanan untuk aplikasi
tertentu, seperti server FTP dan Telnet. Ini adalah mekanisme yang sangat
efektif, tetapi dapat menurunkan kinerja.
c. Circuit-level gateway, yang menerapkan mekanisme keamanan ketika koneksi
TCP atau UDP (User Datagram Protocol) dibuat. Setelah koneksi dibuat, paket
dapat mengalir di antara host tanpa pemeriksaan lebih lanjut.
d. Proxy server, yang memotong semua pesan yang masuk dan keluar dari
jaringan. Server proxy yang berlaku menyembunyikan alamat jaringan yang
sebenarnya.
Dalam praktiknya, banyak firewall menyediakan lebih dari satu teknik ini.

3. Message Digest Algorithms dan Digital Signatures (Tandatangan Digital)


Sebuah algoritma mencerna pesan, atau fungsi hash satu arah, mengambil string
berukuran sembarang (pesan) dan menghasilkan string dengan panjang yang telah
ditetapkan (digest atau hash). Sebuah digest memiliki karakteristik sebagai berikut:
Tanda tangan digital terdiri dari dua bagian informasi: serangkaian bit yang
dihitung dari data yang sedang "ditandatangani," bersama dengan kunci pribadi
dari individu atau organisasi yang menginginkan tanda tangan. Seperti tanda

Introduction to Data and Information Management


tangan yang ditulis tangan, tanda tangan digital memiliki banyak properti yang
bermanfaat seperti:
a. Keasliannya dapat diverifikasi, menggunakan perhitungan berdasarkan kunci
publik terkait;
b. Tidak dapat dipalsukan (dengan asumsi bahwa kunci pribadi dirahasiakan);
c. Ini adalah fungsi dari data yang ditandatangani dan tidak dapat diklaim
sebagai tanda tangan untuk data lainnya;
d. Data yang ditandatangani tidak dapat diubah; jika tidak, tanda tangan tidak
akan lagi memverifikasi data sebagai asli.
4. Digital Certificates (Sertifikat Digital)
Sertifikat digital adalah lampiran ke pesan elektronik yang digunakan untuk tujuan
keamanan, paling umum untuk memverifikasi bahwa pengguna yang mengirim
pesan adalah siapa yang dia klaim dan untuk menyediakan penerima dengan sarana
untuk menyandikan balasan.
5. Kerberos
Kerberos adalah server untuk nama pengguna dan kata sandi yang aman.
Pentingnya Kerberos adalah bahwa ia menyediakan satu server keamanan terpusat
untuk semua data dan sumber daya di jaringan.
6. Secure Sockets Layer dan Secure HTTP
Banyak pengembang produk Internet besar yang setuju untuk menggunakan
protokol enkripsi yang dikenal sebagai Secure Sockets Layer (SSL) yang
dikembangkan oleh Netscape untuk mentransmisikan dokumen pribadi melalui
Internet. SSL bekerja dengan menggunakan kunci pribadi untuk mengenkripsi data
yang ditransfer melalui koneksi SSL. Protokol ini terletak antara lapisan protokol
tingkat aplikasi seperti HTTP dan protokol tingkat transport TCP / IP, dirancang
untuk mencegah penyadapan, gangguan, dan pemalsuan pesan.
Protokol lain untuk mentransmisikan data secara aman melalui Web adalah Secure
HTTP (S-HTTP), versi modifikasi dari protokol HTTP standar. S-HTTP dirancang
untuk mengirim pesan individu secara aman. Oleh karena itu, SSL dan S-HTTP
dapat dilihat sebagai pelengkap daripada teknologi yang saling bersaing.
Pada dasarnya, protokol-protokol ini memungkinkan browser dan server untuk
mengotentikasi satu sama lain dan mengamankan informasi yang kemudian
mengalir di antara mereka. Melalui penggunaan teknik kriptografi seperti enkripsi,
dan tanda tangan digital, yang dilakukan protokol ini:
a. Mengizinkan browser dan server Web untuk saling mengotentikasi;
b. Mengizinkan pemilik situs web untuk mengontrol akses ke server, direktori,
file, atau layanan tertentu;
c. Memungkinkan informasi sensitif (misalnya, nomor kartu kredit) untuk
dibagikan antara browser dan server, namun tetap tidak dapat diakses oleh
pihak ketiga;

Introduction to Data and Information Management


d. Memastikan bahwa pertukaran data antara browser dan server dapat
diandalkan, yaitu, tidak dapat rusak baik secara tidak sengaja atau sengaja,
tanpa deteksi.
Komponen kunci dalam pembentukan sesi Web aman menggunakan SSL atau
protokol S-HTTP adalah sertifikat digital. Tanpa sertifikat yang otentik dan dapat
dipercaya, protokol seperti SSL dan S-HTTP tidak menawarkan keamanan sama
sekali.
7. Secure Electronic Transaction and Secure Transaction Technology
Protokol Secure Electronic Transactions (SET) merupakan standar terbuka dan
interoperable untuk memproses transaksi kartu kredit melalui Internet, yang dibuat
bersama oleh Netscape, Microsoft, Visa, Mastercard, GTE, SAIC, Terisa Systems,
dan VeriSign.
Sertifikat banyak digunakan oleh SET, baik untuk sertifikasi pemegang kartu dan
untuk menyatakan bahwa pedagang memiliki hubungan dengan lembaga
keuangan. Mekanisme diilustrasikan pada Gambar 10.6. berikut ini.

Gambar 5.7. Sebuah transaksi SET. Connoly (2017)

Meskipun Microsoft dan Visa International adalah peserta utama dalam spesifikasi
SET, mereka saat ini menyediakan protokol Secure Transaction Technology
(STT), yang telah dirancang untuk menangani pembayaran bank yang aman
melalui Internet. STT menggunakan enkripsi informasi DES, enkripsi RSA
informasi kartu kredit, dan otentikasi yang kuat dari semua pihak yang terlibat
dalam transaksi.
8. Java Security
Keselamatan dan keamanan merupakan bagian integral dari desain Java, dengan
"sandbox" memastikan bahwa aplikasi yang tidak dipercaya dan mungkin
berbahaya tidak dapat memperoleh akses ke sumber daya sistem. Untuk
menerapkan “sand box” ini, tiga komponen digunakan:

Introduction to Data and Information Management


a. a class loader,
Kelas loader, selain memuat setiap kelas yang diperlukan dan memeriksa itu
dalam format yang benar, juga memeriksa apakah aplikasi / applet melanggar
keamanan sistem dengan mengalokasikan namespace.
b. a bytecode verifier/ pemverifikasi bytecode,
Sebelum JVM memungkinkan aplikasi / applet berjalan, kodenya harus
diverifikasi. Pemverifikasi mengasumsikan bahwa semua kode dimaksudkan
untuk merusak atau melanggar keamanan sistem dan melakukan serangkaian
pemeriksaan, termasuk pelaksanaan prover teorema, untuk memastikan bahwa
ini tidak terjadi. Pemeriksaan umum termasuk memverifikasi bahwa:
- kode yang dikompilasi diformat dengan benar;
- tumpukan internal tidak akan meluap / melimpah;
- tidak ada konversi data "ilegal" yang akan terjadi (misalnya, integer ke
pointer) - ini memastikan bahwa variabel tidak akan diberikan akses ke area
memori yang terbatas;
- instruksi bytecode diketik secara tepat;
- semua akses anggota kelas valid.
c. a security manager/ seorang manajer keamanan.
Umumnya, Security Manager melakukan verifikasi runtime metode yang
berpotensi "berbahaya", yaitu metode yang meminta I / O, akses jaringan, atau
upaya untuk mendefinisikan loader kelas baru.
Fitur keamanan disediakan oleh bahasa Java dan Java Virtual Machine (JVM),
dan ditegakkan oleh compiler dan sistem runtime; keamanan adalah kebijakan
yang dibangun di atas lapisan keamanan ini.
Dua fitur keamanan Java berhubungan dengan pengetikan yang kuat dan
pengumpulan sampah otomatis
9. ActiveX Security
Model keamanan ActiveX sangat berbeda dari applet Java. Java mencapai
keamanan dengan membatasi perilaku applet ke set instruksi yang aman. ActiveX,
di sisi lain, tidak membatasi apa yang dapat dilakukan kontrol. Sebagai gantinya,
setiap kontrol ActiveX dapat ditandatangani secara digital oleh pembuatnya
menggunakan sistem yang disebut Authenticode ™.

E. Classification Failures
Kegagalan mengacu pada keadaan ketika sistem tidak dapat lagi melanjutkan
eksekusi normalnya dan yang mengakibatkan hilangnya informasi. Berbagai jenis
kegagalan adalah sebagai berikut:
1. Sistem crash: Kegagalan ini terjadi karena bug dalam perangkat lunak atau
kegagalan perangkat keras dll.

Introduction to Data and Information Management


2. Kegagalan transaksi : Kegagalan ini terjadi karena kesalahan logis seperti overlow
of stack, input buruk, data tidak ditemukan, ruang kosong yang tersedia lebih
sedikit, dll., atau oleh kesalahan sistem seperti deadlock, dll.
3. Kegagalan disk: Kegagalan ini terjadi karena head crash, robeknya tape, kegagalan
selama transfer data, dll.

F. Recovery Concept
Pemulihan dari keadaan gagal mengacu pada metode di mana sistem
mengembalikan keadaan konsisten terbaru tepat sebelum waktu kegagalan. Ada
beberapa metode yang dengannya Anda dapat memulihkan database dari keadaan
gagal. Ini didefinisikan sebagai berikut:
Pemulihan Berbasis Log/Log Based Recovery
Dalam sistem pemulihan berbasis log, log dipertahankan, di mana semua modifikasi
database disimpan. Sebuah log terdiri dari catatan log. Untuk setiap aktivitas database,
catatan log terpisah dibuat. Catatan log dipelihara secara serial di mana aktivitas yang
berbeda terjadi. Ada berbagai catatan log. Typical update log record harus berisi
bidang berikut:
1. Pengidentifikasi transaksi/ Transaction identifier: Nomor unik yang diberikan
untuk setiap transaksi.
2. Pengidentifikasi item data/Data-item identifier: Nomor unik yang diberikan pada
item data yang ditulis.
3. Tanggal dan waktu pembaruan.
4. Nilai lama/old value: Nilai item data sebelum ditulis/write.
5. Nilai baru/new value: Nilai item data setelah ditulis/write.
Log harus ditulis pada penyimpanan non-volatile (stabil). Dalam pemulihan berbasis
log, dua operasi berikut untuk recovery/pemulihan diperlukan:
1. Redo: Artinya, pekerjaan transaksi yang berhasil diselesaikan sebelum crash harus
dilakukan lagi.
2. Undo: Artinya, semua pekerjaan yang dilakukan oleh transaksi yang tidak selesai
karena crash harus dibatalkan.
Operasi redo dan undo harus idempoten. Operasi idempoten adalah operasi yang
memberikan hasil yang sama, ketika dijalankan satu kali atau lebih.
Untuk setiap transaksi Ti, berbagai catatan log adalah:
[Ti start] : Ini merekam ke log ketika Ti memulai eksekusi.
[Ti, Aj ] : Ini merekam ke log ketika Ti membaca item data Aj.
[Ti, Aj, V1, V2] : Ini mencatat ke log ketika Ti memperbarui item data Aj, di mana
V1 mengacu pada nilai lama dan V2 mengacu pada nilai baru Aj.
[Ti Commit] : Ini mencatat ke log ketika Ti berhasil melakukan.
[Ti aborts] : Ini mencatat ke log jika Ti dibatalkan.

Introduction to Data and Information Management


Ada dua jenis teknik Pemulihan Berbasis Log yang dibahas di bawah ini yaitu :
1. Recovery Based on Deferred Database Modification
Dalam deferred database modification technique, menangguhkan (menghentikan)
semua operasi write dari setiap Transaksi Ti sampai sebagian dijalankan. Itu berarti
memodifikasi basis data nyata setelah Ti sebagian dikomit. Semua kegiatan dicatat
dalam log. Catatan log digunakan untuk memodifikasi database yang sebenarnya.
Misalkan transaksi Ti ingin ditulis pada item data Aj, maka catatan log [Ti, Aj ,V1,
V2] disimpan di log dan digunakan untuk memodifikasi database. Setelah
modifikasi yang sebenarnya, Ti masuk ke kondisi commit. Dalam teknik ini, field
old value tidak diperlukan.
Contoh :
Perhatikan contoh sistem Perbankan. Misalkan Anda ingin mentransfer `200 dari
Akun A ke B di Transaksi T1 dan menyetor `200 ke Akun C di T2. Transaksi T1
dan T2 ditunjukkan pada Gambar 5.8.

Gambar 5.8. Transaksi T1 dan T2. Satinder (2017)

Misalkan, nilai awal Akun A, B dan C berturut-turut adalah `500, `1.000 dan `600,
Berbagai catatan log untuk T1 dan T2 seperti yang ditunjukkan pada Gambar 5.9.

Gambar 5.9. Log record untuk transaksi T1 dan T2. Satinder (2017)

Introduction to Data and Information Management


Untuk operasi redo, log harus berisi catatan log [Ti start] dan [Ti commit].

Gambar 5.10. Log transaksi T1 dan T2 jika terjadi crash. Satinder (2017)

Crash akan terjadi setiap saat pada pelaksanaan transaksi. Misalkan kecelakaan
terjadi :
a. Setelah write (A) dari T1: Pada saat itu log record di log ditunjukkan pada
Gambar 5.10(a). Tidak perlu mengulang operasi karena tidak ada record
commit yang muncul di log. Record log T1 dapat dihapus/di delete.
b. Setelah menulis (C) dari T2 : Pada saat itu catatan log di log ditunjukkan pada
Gambar 5.10(b). Dalam situasi ini, Anda harus mengulang T1 karena [T1 start]
dan [T1 commit] muncul di log. Setelah operasi redo, nilai A dan B berturut-
turut adalah 300 dan 1200. Nilai tetap sama karena redo adalah idempoten.
c. Selama recovery: Jika sistem crash pada saat recovery, cukup mulai recovery
lagi.
2. Recovery Based on Immediate Database Modification
Dalam teknik modifikasi database langsung, database dimodifikasi oleh setiap
transaksi T1 selama status aktifnya. Artinya, basis data sebenarnya dimodifikasi
setelah operasi write tetapi setelah catatan log ditulis ke penyimpanan yang stabil.
Ini karena catatan log digunakan selama recovery. Gunakan operasi Undo dan Redo
dalam metode ini. Field old value juga diperlukan (untuk operasi Undo). Perhatikan
kembali transaksi perbankan pada Gambar 5.8. Catatan log yang sesuai setelah
berhasil menyelesaikan T1 dan T2 ditunjukkan pada Gambar 5.11.

Gambar 5.11. Log record untuk transaksi T1 dan T2

Introduction to Data and Information Management


a. Agar transaksi Ti diulang, log harus berisi record [Ti start] dan [Ti
commit].
b. Agar transaksi Ti dibatalkan, log harus hanya berisi Record [Ti start].

Gambar 5.12. Log transaksi T1 dan T2 jika terjadi crash.

Crash akan terjadi setiap saat pelaksanaan transaksi. Misalkan crash terjadi.
a. Setelah write (A) dari T1 : Pada saat itu catatan log di log ditunjukkan pada
Gambar 5.12(a). Di sini hanya ada [T1 start] jadi undo transaksi T1. Akibatnya,
Akun A mengembalikan nilai lamanya 500.
b. Setelah write (C) dari T2 : Pada saat itu log record di log ditunjukkan pada
Gambar 5.12(b). Selama record back-up [T2 start] muncul tetapi tidak ada [T2
commit], maka batalkan transaksi T2 . Akibatnya, Akun C mengembalikan
nilai lama 600. Ketika Anda menemukan record [T1 start] dan [ T1 commit] di
log, redo transaksi T1 dan akun A dan B keduanya mempertahankan nilai
barunya.
c. Selama recovery: Jika sistem crash pada saat recovery, cukup mulai recovery
lagi.

Checkpoint
Kedua teknik yang dibahas sebelumnya memastikan pemulihan dari failure state,
tetapi mereka memiliki beberapa kelemahan seperti:
1. Mereka memakan waktu karena transaksi yang berhasil diselesaikan harus
diulang.
2. Prosedur pencarian juga memakan waktu karena seluruh log harus dicari.
Jadi, gunakan checkpoint untuk mengurangi overhead. Salah satu teknik
pemulihan sebelumnya dapat digunakan dengan checkpoint. Semua transaksi
berhasil diselesaikan atau memiliki record [Ti commit] sebelum record
[checkpoint] tidak perlu dilakukan ulang.
Selama waktu kegagalan, cari checkpoint terbaru. Semua transaksi berhasil
diselesaikan setelah checkpoint perlu dilakukan ulang. Setelah mencari
checkpoint, cari transaksi terbaru Ti yang memulai eksekusi sebelum checkpoint

Introduction to Data and Information Management


tersebut tetapi belum selesai. Setelah mencari transaksi tersebut, redo/undo
transaksi sesuai dengan metode yang diterapkan.
Keuntungan utama dari checkpoint adalah :
1. Tidak perlu mengulang/redo transaksi yang berhasil diselesaikan sebelum
checkpoint terbaru.
2. Lebih sedikit pencarian yang diperlukan.
3. Record lama dapat dihapus.

G. Shadow Paging

Shadow Paging merupakan teknik alternatif pemulihan untuk mengatasi


kelemahan teknik pemulihan berbasis log. Ide utama di balik shadow paging adalah
untuk menyimpan dua page table dalam database, satu digunakan untuk operasi saat
ini dan lainnya digunakan untuk pemulihan.
Basis data dipartisi menjadi blok-blok dengan panjang tetap yang disebut
page. Untuk manajemen memori, gunakan teknik paging apa pun.
Page Table
Untuk menyimpan record setiap page dalam database, pertahankan page
table. Jumlah total entri dalam page table sama dengan jumlah page dalam database.
Setiap entri dalam page table berisi penunjuk ke lokasi fisik page.
Dua page table di Shadow Paging adalah:
1. Shadow page table : Tabel ini tidak dapat diubah selama transaksi apa pun.
2. Current page table : Tabel ini dapat diubah selama transaksi.
Kedua page table identik pada awal transaksi. Misalkan sebuah transaksi Ti
melakukan operasi write pada item data V, yang berada di halaman j. Prosedur operasi
write adalah sebagai berikut:
1. Jika page ke-jth ada di memori utama maka Ok jika tidak, transfer dulu dari
memori sekunder ke memori utama dengan input instruksi (V).
2. Misalkan page digunakan pertama kali maka:
a. Sistem pertama-tama menemukan free page di disk dan menghapus
entrinya dari daftar free page.
b. Kemudian ubah current page table sehingga menunjuk ke page yang
ditemukan pada langkah 2(a).
3. Ubah konten page atau tetapkan nilai baru ke V.
Shadow page table harus disimpan dalam penyimpanan yang non-volatile
atau stabil karena digunakan pada saat recovery. Misalkan sistem crash dan Anda
harus memulihkannya. Setelah setiap transaksi berhasil diselesaikan, current page
table diubah menjadi shadow page table. Jadi, shadow page table harus dicari. Untuk
mempermudah pencarian, simpan Shadow page table di lokasi penyimpanan stabil
yang tetap. Tidak ada operasi redo yang perlu dipanggil. Shadow page table dan
current page table ditunjukkan pada Gambar 5.13 setelah operasi write dilakukan.

Introduction to Data and Information Management


Gambar 5.13. Shadow Paging. Satinder (2017)

Kerugian utama dari shadow paging adalah:


1. Fragmentasi data karena page berukuran tetap.
2. Pemborosan ruang memori.
3. Overhead ekstra pada saat komit (dengan mentransfer page table)
4. Ini tidak memberikan konkurensi.

Introduction to Data and Information Management


KESIMPULAN

1. Threat dapat disebabkan oleh situasi atau peristiwa yang melibatkan seseorang,
tindakan, atau keadaan yang mungkin dapat membahayakan organisasi.

2. Kerugian tersebut mungkin berwujud, seperti hilangnya perangkat keras,


perangkat lunak, atau data, atau tidak berwujud, seperti hilangnya kredibilitas
atau kepercayaan klien

3. kontrol keamanan berbasis komputer berikut untuk lingkungan multi-pengguna


terdiri dari Authorization dan Access Control.

Introduction to Data and Information Management


DAFTAR PUSTAKA

1. Connolly, T., & Begg, C. (2015). Database System a Practical Approach to


Design, Implementation, and Management 6th Edition. Pearson
2. Satinder Bal Gupta & Aditya Mittal. (2017). Introduction to Database
Management System 2nd Edition. University Science Press. Laxmi Production.

Introduction to Data and Information Management

Anda mungkin juga menyukai