The Application Control Framework (5-6) CDG4I3 / Audit Sistem Informasi Angelina Prima K | Gede Ary W. KK SIDE - 2014
The Application Control Framework 1. Boundary controls 2. Input controls 3. Communication controls 4. Processing controls 5. Database controls 6. Output controls
Database Controls
Introduction Subsistem basis data berfungsi menentukan, membuat, modifikasi, menghapus dan membaca data dalam sistem informasi. Tipe: data deklaratif (statis) dan prosedural (dinamis) Menyimpan: (1) data tentang desain dari objek yang dapat di-compose atau decompose serta (2) gambar, suara dan video untuk mendukung aplikasi multimedia Komponen utama: Program yang define, create, modify, dan delete data OS yang melakukan operasi I/O dasar dari dan ke media penyimpan Central processor dan primary storage yang mencatat aktivitas yang dilakukan Media penyimpanan yang mengelola data permanen maupun semi permanen
Access Controls Kontrol akses dalam basis data berupaya mencegah akses dan penggunaan data yang tidak sah. Berdasarkan kebijakan keamanan dan mekanisme kontrol yang sesuai untuk subsistem basis data Tipe-tipe kebijakan keamanan: Discretionary access controls Dengan membatasi berdasarkan nama, konten, konteks, atau sejarah akses Mandatory access controls Dilakukan berdasarkan pengelompokan level sumber daya dan level pengguna.
Integrity Controls DBMS yang baik menerapkan beberapa tipe integrity constrains untuk mengelola akurasi, kelengkapan, dan uniqueness dari instances yang digunakan dalam pendekatan pemodelan konseptual dan pemodelan data untuk merepresentasikan fenomena dunia riil tentang data yang disimpan dalam subsistem basis data. Meliputi: ER model integrity constraints Uniqueness, min&max cardinality, entity ID, value type&set of ID Relational data model integrity constraints Key, entity and referential constraints Object data model integrity constraints Unique ID&key, value type&set of attribute, tipes and inheritance
Application Software Controls (#1) Integritas subsistem basis data bergantung pada kontrol yang diterapkan pada program aplikasi pengguna basis data. Protokol untuk melindungi integritas basis data: Update protocols Memastikan bahwa perubahan pada basis data menggambarkan perubahan entitas nyata dan asosiasi antar entitas Report protocols Menyediakan informasi bagi pengguna basis data yang memungkinkan identifikasi kesalahan yang muncul saat update basis data
Application Software Controls (#2) Various Update and Report Protocols Update protocols Sequence check transaction and master files Ensure all records on files are processed Process multiple transactions for a single record in the correct order Maintain a suspense account Report protocols Print control data for internal tables (standing data) Print run-to-run control totals Print suspense account entries
Concurrency Controls (#1) Kontrol ini bertujuan untuk memungkinkan pengguna basis data berbagi sumber daya yang sama. Masalah yang sering muncul adalah deadlock. Dapat dicegah dengan properti ACID pada transaksi: Atomicity. Setiap aksi harus dapat dipisahkan dari aksi lainnya. Consistency. Transaksi harus menjaga konsistensi basis data. Isolation. Kejadian dalam transaksi harus transparan terhadap transaksi lain. Durability. Saat sebuah transaksi selesai dilakukan, sistem harus menjamin bahwa perubahan yang terjadi tidak menyebabkan kegagalan di basis data.
Concurrency Controls (#2) Penanganan deadlock juga dapat dilakukan dengan two-phase locking protocol: Sebelum transaksi dapat membaca data, harus memiliki hak “read-lock”. Demikian juga sebelum bisa menulis data, harus punya hak “write-lock”. Transaksi-transaksi yang berbeda tidak bisa memiliki hak lock yang sama secara bersamaan. Locks dapat dilepas saat: Seluruh perubahan dalam transaksi sudah committed Transaksi tidak dapat memperoleh seluruh locks yang diperlukan
Cryptographic Controls Kontrol kriptografis juga dapat diterapkan untuk melindungi integritas data yang disimpan dalam basis data. Cara utamanya adalah dengan block encryption, yang beroperasi pada blok data tunggal. Penggunaan kontrol kriptografis pada subsistem basis data semakin kompleks pada distributed database. Strategi: Keys harus didistribusikan dengan aman Tersimpan di beberapa lokasi sehingga penanganan resiko harus lebih handal Perubahan keys di sebuah lokasi juga harus disinkronkan dengan keys di lokasi lainnya
Audit Trail Controls Accounting audit trail Operational audit trail Subsistem basis data harus menjalankan tiga fungsi: Seluruh transaksi harus memiliki unique time stamp Subsistem harus mencatat beforeimages dan afterimages dari data sebelum dan sesudah transaksi Subsistem harus menyediakan fasilitas untuk define, create, modify, delete, dan retrieve data pada audit trail Operational audit trail Mengelola kronologi kejadian penggunaan sumber daya yang mempengaruhi basis data
Existence Controls (#1) Kegagalan yang dapat mengakibatkan seluruh atau sebagian basis data hilang (destroyed/ corrupted): Application program error mis. bug pada program menyebabkan update data tidak tepat System software error mis. OS, DBMS, telecommunications monitor, atau utility program Hardware failure mis. disk crash Procedural failure mis. kesalahan aksi operator Environmental failure mis. Banjir, kebakaran, atau sabotase
Existence Controls (#2) Jika file master (son) rusak/ hilang, recovery dilakukan dengan versi sebelumnya (father), atau versi sebelumnya lagi (grandfather) Grandfather, father and son strategy Penyimpanan data dilakukan di dua basis data di dua lokasi terpisah dengan update yang selalu simultan Dual recording/ mirroring strategy Dengan meng-copy sebagian atau seluruh basis data pada media backup dan meng-copy-nya kembali saat perlu recovery Dumping Lakukan pencatatan transaksi basis data beserta beforeimages dan afterimages untuk kembali ke status sebelum rusak, jika diperlukan Logging Pendekatan ini mengatasi mahalnya strategi total dumping. Mencatat data yang tidak berubah sejak residual dump sebelumnya. Residual dumping Differential files adalah file-file perubahan yang dilakukan pada basis data Perubahan disimpan pada differential files tanpa mengubah basis data riil Differential files/ shadow paging Strategi backup dan restore yang dapat diterapkan:
Output Controls
Introduction Subsistem output berfungsi dalam menentukan konten data yang akan disediakan untuk pengguna, format dan tampilan, serta persiapan dan penyampaian data bagi pengguna Komponen utama: Software dan petugas yang menentukan konten, format serta waktu penyampaian data bagi pengguna Berbagai perangkat keras untuk menampilkan dan memformat data output ke pengguna Perangkat keras, perangkat lunak, dan petugas yang menyampaikan data output ke pengguna
Inference Controls (#1) Kontrol inferensi digunakan untuk mencegah kompromi berikut: Positive compromise user menentukan bahwa seseorang memiliki atribut tertentu mis. John Doe adalah pecandu alkohol Negative compromise user menentukan bahwa seseorang tidak memiliki atribut tertentu mis. John Doe bukan pecandu alkohol Exact compromise user menentukan nilai atribut tertentu dari seseorang secara tepat mis. Mary Doe memiliki gaji $120,000 per tahun Approximate compromise user menentukan range dari nilai atribut seserang mis. Gaji Mary Doe sekitar $100,000 - $140,000
Inference Controls (#2) Bentuk kontrol inferensi: Restriction controls Membatasi respon bagi pengguna untuk melindungi kerahasiaan data tentang seseorang di basis data Mis. Query yang menghasilkan data yang terlalu spesifik, tidak dieksekusi Perturbation controls Mengidentifikasi noise pada statistik yang dihitung per record dari basis data Mis. Membandingkan data dengan simpangan maksimal yang logis
Batch Output Production and Distribution Controls Batch output: output yang dihasilkan dari sekumpulan fasilitas operasi dan didistribusikan/ dikumpulkan oleh pengguna Kontrol produksi dan distribusi dilakukan untuk memastikan bahwa output telah akurat, lengkap dan tepat waktu bagi pengguna yang berhak Mis. Kontrol pencetakan, untuk: Memastikan bahwa laporan dicetak dengan printer yang tepat Mencegah pihak yang tidak sah untuk mencetak data sensitif yang terdapat pada laporan Memastikan bahwa kontrol yang tepat telah diterapkan untuk menguji form dan alat pencetak
Batch Report Design Controls Elemen penting dari kontrol produksi dan distribusi yang efektif adalah kualitas desainnya. Informasi yang diperlukan dalam batch report: Report name, Time and Date Distribution list Processing period covered Program (incl version) producing report Contact persons Security classification Retention date Method of destruction Page heading, Page number End of job marker
Online Output Production and Distribution Controls Fokus utama adalah untuk: memastikan bahwa hanya pihak-pihak yang berkepentingan yang menerima online output, melindungi integritas output saat dikirim melalui jalur komunikasi, memastikan bahwa online output tidak dapat dilihat oleh pihak tidak berwenang, dan mencegah penggandaan online output secara tidak sah. Kontrol disediakan sesuai fase-fase produksi dan distribusi online output, yaitu: sumber output, distribusi, komunikasi, menerima dan melihat output, mempertahankan output, dan menghapus output
Audit Trail Controls Accounting audit trail Operations audit trail Menunjukkan output apa yang ditampilkan bagi pengguna, siapa penerimanya, kapan output diterima, dan aksi apa yang perlu dilakukan setelah menerima output Dapat dikembangkan dengan menentukan apakah ada pihak tidak berwenang yang dapat menerima output Operations audit trail Mengelola catatan tentang sumber daya yang digunakan untuk menghasilkan berbagai tipe output Dapat dikembangkan dengan memberikan informasi bagi organisasi untuk meningkatkan ketepatan waktu produksi output dan mengurangi jumlah sumber daya yang digunakan
Existence Controls Strategi yang dapat diterapkan: Diperlukan untuk mengembalikan kualitas output jika hilang/ rusak, mis. laporan yang dikirim masuk ke folder spam dan tidak terbaca, tagihan pelanggan dicuri, output terkirim ke alamat jaringan yang salah, laporan hancur dalam kebakaran. Strategi yang dapat diterapkan: Larger spool files Retain the spool file for longer period