Saya setuju dengan Daniel Earwicker - pertanyaan keamanannya cukup banyak cacatnya.
Jika Anda memiliki satu pengaturan kotak dengan server web dan hanya database untuk server web itu, jika server web itu dikompromikan Anda kehilangan server web dan hanya database untuk aplikasi spesifik itu.
Ini persis sama dengan apa yang terjadi jika Anda kehilangan server web pada pengaturan 2-server. Anda kehilangan server web, dan hanya database untuk aplikasi spesifik itu.
Argumen bahwa 'sisa integritas server DB dipertahankan' di mana Anda memiliki pengaturan 2-server tidak relevan, karena dalam skenario pertama, setiap server database lain yang terkait dengan setiap aplikasi lain (jika ada) tetap tidak terpengaruh juga - menjadi, sebagaimana adanya, diselenggarakan di tempat lain.
Demikian pula, untuk pertanyaan yang diajukan oleh Kev 'bagaimana dengan semua database lain yang berada di server DB? Yang hilang hanyalah satu basis data. '
- jika Anda meng-hosting aplikasi dan database pada satu server, Anda hanya akan meng-host database di server yang terkait dengan aplikasi itu. Oleh karena itu, Anda tidak akan kehilangan database tambahan dalam pengaturan server tunggal jika dibandingkan dengan pengaturan server ganda.
Sebaliknya, dalam pengaturan 2 server, di mana penyerang memiliki akses ke Web Server, dan dengan proxy, hak terbatas (dalam skenario kasus terbaik) ke server database, mereka dapat menempatkan database setiap aplikasi lain dalam bahaya dengan membawa lambat, permintaan intensif memori atau memaksimalkan ruang penyimpanan yang tersedia di server database. Dengan memisahkan aplikasi menjadi keprihatinan mereka sendiri, seperti virtualisasi, Anda juga mengisolasi mereka untuk tujuan keamanan dengan cara yang positif.