Sunday, April 28, 2013

Security dan Integrity database

SECURITY Yaitu kemampuan untuk melindungi data terhadap akses dan aksi yang tidak berwenang pada database.

Sekuriti data sangat penting dalam sistem database, artinya mengontrol pengaksesan data dalam database terhadap orang-orang yang tidak berwenang, sehingga mencegah :

- Penyingkapan rahasia.

- Perubahan data.

- Perusakan / penghapusan data.

Ada 3 kelompok yang berhubungan dengan Database :

           a. USER : User adalah pemilik data, user sesuai dengan departemennya hanya berwenang untuk sekumpulan data tertentu, kontrol pengaksesan data oleh user ini dapat dilakukan dengan memakai PASSWORD. Password ini mempunyai 2 fungsi :

- Memberi identifikasi seorang user

- Memberi kewenangan (authorized) dan hak (privilege)

Macam-macam hak pada sistem database adalah :

1. Hak retrieval : Mencari dan melaporkan

2. Hak Update pada record meliputi :

- Append (Menambah)

- Insert (Menyisipi)

- Modifikasi (Merubah)

- Delete (Menghapus)

3. Hak Definition File meliputi :

- Create (Mendefinisikan file baru)

- Revision (Merevisi definisi yang ada)

- Delete (Menghapus seluruh file)

- Memberi indeks

4. Hak GRANT (memberi) hak pada user.

Hak definition dan Grant hanya dimiliki oleh DBA.

Pembuatan Password harus mengingat hal-hal :

1. Mudah diingat

2. Sulit ditebak

3. Cukup sering diubah

4. Kerahasiaannya terlindungi.

 

b. Programer : Ada 2 macam programer

- Aplication Programer : Programer yang membuat program-program aplikasi

- System programer : Programer yang membuat program-program sistem yang memadukan dan mengontrol program-program aplikasi. misal : membuat menu untuk masing-masing user, membuat log transaction pemakaian program dan database dari para User dan sebagainya, dan harus mentaati prosedur password.

         c. Operation staff : Sering kerusakan data disebabkan operator yang kurang terlatih atau petunjuk yang kurang memadai atau sulit dipahami. Operator yang berhubungan dengan database adalah operator program aplikasi.

Pengamanan data baginya antara lain berupa :

- Validasi yang cukup pada data entry

- Pengecekan jumlah counter dengan formulir data

- Operator database (staff DBA)

- Pada saat backup, data harus mendapat perhatian.

 

INTEGRITY Yaitu kemampuan untuk membuat data tetap valid jika terjadi pemakaian data yang sama pada waktu yang sama oleh beberapa user.

Ada 3 sudut pandang di dalam integrity :

1. Semantic Integrity

2. Concurency Control : Data yang sama dipakai oaleh beberapa user pada waktu yang sama

Masalah dalam concurency : Lost update, dirty read, unrepeatable read

Cara menghilangkan problem concurency adalah mekanisme locking yaitu mekanisme untuk menghapus masalah concurency ada 2 :

· Exclusive Lock : Sebuah lock yang mengijinkan pemegang mengakses sendiri ke lock data, tidak ada proses yang lain (baca atau menulis)

· Shared Lock : Sebuah lock yang mengijinkan beberapa proses untuk mengakses bersama-sama suatu bagian dari database, satu update yang lain baca

Mekanisme locking menyebabkan terjadinya deadlock

3. Recovery : Kemampuan mempertahankan data bila terjadi kegagalan sistem, misal karena listrik mati, drive rusak, dan lain-lain.

Masalah yang merusak Integrity adalah Transaksi yaitu suatu unit kerja utuh yang mempunyai arti (terdiri dari suatu jajaran tindakan)

Sebuah transaksi dapat gagal karena :

· Suatu tindakan melanggar semantic integrity (Integritas Penawaran)

· User membatalkan transaksi

· Terjadi IO Error

· Dead Lock / jalan buntu mogok

· Kegagalan aplikasi program

· Sistem crash, O/S problem atau H/W

Concurrent Control yaitu pemakaian data yang sama oleh beberapa user pada waktu yang sama, concurrent control terjadi didalam lingkungan yang multi user.

Akibat adanya concurrent control mengakibatkan masalah sbb :

- Lost Update yaitu kehilangan data pada saat terjadi update

- Dirty Read yaitu terjadinya kerusakan data pada saat membaca

- Unrepeatable read yaitu terjadi proses perulangan pembacaan data

Untuk mengatasi masalah diatas diperlukan mekanisme locking, ada 2 jenis mekanisme locking yaitu :

1. Share Lock yaitu mekanisme penguncian data dilakukan oleh pemegang lock dimana semua user boleh membaca(read) tetapi hanya satu yang menulis(write).

2. Exclusive Lock yaitu mekanisme penguncian data dilakukan oleh pemegang lock dimana hanya satu yang boleh read atau write sedangkan user yang lain tidak boleh read atau write.

Jika mekanisme locking dilakukan dan terjadi adanya saling menunggu diantara user yang menjalankan transaksi sampai dengan membentuk circulair wait maka transaksi nya akan terjadi masalah baru yaitu deadlock yang mengakibatkan proses macet pada lingkungan multiuser diakibatkan pemakaian data secara concurrent.

Analogi traffic jam dari Dead Lock :

· Presequence / penjadwalan transaksi : Tidak ada perselisihan proses (menggunakan data yang sama) diijinkan untuk menjalankan bersama-sama

· Pre-Empt : Membutuhkan suatu mekanisme untuk mendeteksi sumber-sumber deadlock

· Pre-Claim / pesan tempat dulu : Meminta semua proses yang diupdate untuk request-with-lock semua sumber yang dibutuhkan untuk mensukseskan transaksi yang lengkap

· Pre-Order : Membutuhkan ordering untuk semua data yang diproses (semua kebutuhan data diprioritaskan, tetapi jika terjadi deadlock data yang besar didahulukan)

Two-Phase-Locking : Mekanisme untuk memberikan suatu lock, suatu ketika sebuah transaksi membebaskan lock pada data object (tidak dapat additional lock).

BACKUP and RECOVERY terdiri dari :

· Update / Image log: Menyimpan record sebelum dan sesudah perubahan

· Backup Dump : Menyimpan semua isi dari database pada media terpisah

· Transaction log : Menyimpan semua isi dari database pada media terpisah

· Audit trial : Menyimpan transaksi dalam bentuk siapa, kapan, dimana dan status hasilnya

Strategi yang dipakai :

· Dual Recording Database

· Periodic Dumping

· Logging input data transaction

· Logging change to database

Thursday, April 25, 2013

Layanan Sistem Operasi

Sistem operasi menyediakan layanan untuk programmer sehingga dapat
melakukan pemrograman dengan mudah.

  1. Eksekusi Program. Sistem harus dapat memanggil program ke memori dan menjalankannya. Program tersebut harus dapat mengakhiri eksekusinya dalam bentuk normal atau abnormal (indikasi error).
  2. Operasi-operasi I/O. Pada saat running program kemungkinan dibutuhkan I/O, mungkin berupa file atau peralatan I/O. Agar efisien dan aman, maka user tidak boleh mengontrol I/O secara langsung, pengontrolan dilakukan oleh sistem operasi.
  3. Manipulasi sistem file. Kapabilitas program untuk membaca, menulis, membuat dan menghapus file.
  4. Komunikasi. Komunikasi dibutuhkan jika beberapa proses yang sedang dieksekusi saling tukar-menukar informasi. Penukaran informasi dapat dilakukan oleh beberapa proses dalam satu komputer atau dalam komputer yang berbeda melalui sistem jaringan. Komunikasi dilakukan dengan cara berbagi memori (shared memory) atau dengan cara pengiriman pesan (message passing).
  5. Mendeteksi kesalahan. Sistem harus menjamin kebenaran dalam komputasi dengan melakukan pendeteksian error pada CPU dan memori, perangkat I/O atau pada user program.

Beberapa fungsi tambahan yang ada tidak digunakan untuk membantu user, tetapi lebih digunakan untuk menjamin operasi sistem yang efisien, yaitu :

  • Mengalokasikan sumber daya (resource). Sistem harus dapat mengalokasikan resource untuk banyak user atau banyak job yang dijalanan dalam waktu yang sama.
  • Akutansi. Sistem membuat catatan daftar berapa resource yang digunakan user dan resource apa saja yang digunakan untuk menghitung secara statistik akumulasi penggunaan resource.
  • Proteksi. Sistem operasi harus menjamin bahwa semua akses ke resource terkontrol dengan baik.

Tuesday, April 23, 2013

Arsitektur sistem basis data

Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data.

1.  LEVEL ARSITEKTUR BASIS DATA
Menurut ANSI/SPARC, arsitektur basis data terbagi atas tiga level yaitu :

Internal/Physical Level:
berhubungan dengan bagaimana data disimpan secara fisik (physical storage)
External /View Level
berhubungan dengan bagaimana data di representasikan dari sisi setiap user.
Conceptual/Logical Level
menghubungkan antara internal & external level
clip_image002

Berikut adalah gambar tiga level arsitektur system basis data :
   Gambar I.1 Tiga level arsitektur system basis data

1.1 View Level / External Level
Adalah level user. Yang dimaksud dengan user adalah programmer, end user atau DBA.
Setiap user mempunyai ‘bahasa’ yang sesuai dengan kebutuhannya.
- programmer : bahasa yang digunakan adalah bahasa pemrograman seperti C,
                         COBOL, atau PL/I
- end user : bahasa yang digunakan adalah bahasa query atau menggunakan
fasilitas yang tersedia pada program aplikasi pada level eksternal ini, user dibatasi pada kemampuan perangkat keras dan perangkat lunak yang digunakan aplikasi basis data. Didefinisikan sebagai sebuah Skema Eksternal.

1.2 Logical level / Conceptual Level
Conceptual level adalah sebuah representasi seluruh muatan informasi yang dikandung oleh basis data. Tidak seperti level eksternal maka pada level conceptual, keberadaannya tidak memperhitungkan kekurangan perangkat keras maupun perangkat lunak pembangun aplikasi basis data. Didefinisikan sebagai sebuah Skema Konseptual

1.3 Physical Level / Internal
Adalah level terendah untuk merepresentasikan basis data. Record disimpan dalam media penyimpanan dalam format byte. Didefinisikan sebagai sebuah Skema Internal.


2 PEMETAAN
2.1 Conceptual/internal Mapping
Yaitu pemetaan yang mendefinisikan hubungan antara level konseptual dan level internal. Pemetaan ini menjelaskan bagaimana record & field pada level konseptual direpresentasikan pada level internal.
2.2 External/Conceptual Mapping
Yaitu pemetaan yang mendefinisikan hubungan antara level eksternal dan
level konseptual. Contoh : beberapa field dapat mempunyai tipe yang
berbeda, field dan nama field dapat berubah, bebeapa field pada level
konseptual dapat dikombinasikan ke dalam satu field external.


3 MODEL-MODEL DATA
Yang dimaksud dengan model data adalah sekumpulan tool konseptual untuk
mendeskripsikan data, relasi-relasi antar data, semantic data & konsistensi konstrain. Bermacam-macam model data terbagi dalam tiga kelompok besar yaitu :
Object-based logical models, record-based logical models, & physical models.

1. Object-based logical Models
Yang termasuk dalam kelompok ini adalah :
- Entity-relationship model
- Object-oriented model
- Semantic data model
- Functional data model
Dua dari model di atas yaitu : entity-relationship model & object-oriented model akan dijelaskan lebih detil.
a. Entity-relationship Model
E-R model didasarkan atas persepsi terhadap dunia nyata yanga terdiri dari sekumpulan objek, disebut entity dan hubungan antar objek tersebut, disebut
relationship. Entity adalah objek di dunia yang bersifat unik. Setiap entity
mempunyai atribut yang membedakannya dengan entity lainnya.
Contoh :
entity Mahasiswa, mempunyai atribut nama, umur, alamat no. ktm.
Pemodelan data dengan model E-R menggunakan diagram E-R. Diagram E-R
terdiri dari :
·        Kotak persegi panjang, menggambarkan himpunan entity
·        Elip, menggambarkan atribut-atribut entity
·        Diamon, menggambarkan hubungan antara himpunan entity
·        Garis, yang menghubungkan antar objek dalam diagram E-R
·         
b. Object-Oriented Model
Model berorientasi objek berbasiskan kumpulan objek. Setiap objek berisi :
1. Nilai yang disimpan dalam variable instant, dimana variable tersebut    “melekat” dengan objek itu sendiri.
2. Metoda : operasi yang berlaku pada objek yang bersangkutan
3. Objek-objek yang memiliki tipe nilai & metode yang sama dikelompokkan dalam satu kelas. Kelas disini mirip dengan tipe data abstrak pada bahasa pemrograman.
4. Sending a message : sebuah objek dapat mengakses data sebuah objek yang lain hanya dengan memanggil metode dari objek tersebut.

c. Model-model logic berbasis record
Terdapat beberapa model dalam kelompok ini :
1. Model Relasional ( Relational Model)
Model relasional menggunakan kumpulan tabel-tabel untuk merepresentasikan data & relasi antar data-data tersebut. Setiap tabel terdiri atas kolom-kolom, dan setiap kolom mempunyai nama yang unik.
Contoh :

     NIM
NAMA
  ALAMAT
DOSEN WALI
113940005        Ani Ambar          Jl. PGA No.1          WNS
113950098        Andi Ari             Jl. ABC No.6          TBH
113950100        Tuti                    Jl. AA No.78          WNS


DOSEN   WALI    ALAMAT
 WNS      KOPO      PERMAI
 TBH       BALE       INDAH


2 Model Jaringan (Network Model )
Data dalam model jaringan direpresentasikan dengan sekumpulan record (Pascal), dan relasi antara data direpresentasikan oleh record & link. Link dipandang sebagai pointer. Record-record diorganisasikan sebagai graf. Contoh, model relasional di atas direpresentasikan dalam model jaringan.

3 Model Hirarki (Hirarchical Model)
Mirip dengan model jaringan.Data direpresentasikan dalam record dan link. Perbedaannya adalah, record-record diorganisasikan sebagai tree (pohon) daripada graf. Model relasional berbeda dengan model jaringan & hirarki, dalam hal penggunaan pointer atau link.

Tuesday, April 16, 2013

Perancangan jaringan sebuah gedung yang memiliki 4 lantai

Topologi Jaringan

clip_image002
Range Ip lantai 1 yaitu 192.168.1.35 ----- 192. 168.1.62 berarti ada 28 client lagi
Begitu juga lantai 2,3 dan 4.
Langkah Kerja:
Pada seluruh Router, lakukan Remove Configuration terlebih dahulu:
clip_image004
clip_image007clip_image005
Pengaturan di Router Utama
1. Pertama, ada baiknya kita merubah nama interface yang akan digunakan supaya lebih jelas. Caranya klik pada Tab Interface, kemudian Ubah namanya sesuai kebutuhan.
clip_image010clip_image008
clip_image015clip_image011 clip_image017
Kemudian klik Ok
clip_image003clip_image005
 
2. Selanjutnya mengatur IP pada masing-masing Interface. Caranya dengan   memilih tab IP > Addresses
clip_image002[6]
Pada kolom Address isikan alamatnya. Dan dikolom Interface pilih interface yang akan yang sesuai. Klik OK.
Wan => 192.168.1.2/30
Router1 => 192.168.1.5/30
Router2 => 192.168.1.9/30
Router3 => 192.168.1.13/30
Router4 => 192.168.1.17/30





clip_image006[6]
3. Selanjutnya mengatur IP Firewall. Pilih pada Tab NAT dan klik . Isikan Destination Address dan Out Interface nya.
clip_image004[10]
Di Tab Action pilih “masquerade” dan klik OK.
clip_image007[4]
clip_image009
4. Selanjutnya tambahkan tabel routingnya. IP > Routes
clip_image002[12]
Pada gambar diatas merupakan Route list yang berstatus Direct. Untuk itu kita perlu menambahkan Route baru agar nantinya bisa terkoneksi dengan jaringan yang statusnya Indirect.
clip_image004[16]
clip_image007[10]
Konfigurasi pada Router Utama telah selesai sampai disini. Selanjutnya kita akan mengkonfigurasi Router dimasing-masing Lantai. caranya sama dengan menngkonfigurasi ip di router utama, dengan mengentrikan ip sesuai topologi diatas.