What are the security advantages of installing the database of a web application on a server other than the one containing the web server?
|
|
Well the first obvious advantage is that if someone breaks the box that houses your application server, they are not guaranteed access to the same server that houses the database. Also, by separating this functionality you make it easier on the IT (software devs, admins, etc) to minimize code change impact / policy updates on different aspects of the environment. This does not in any way fix poor coding or weak security (SQL injection, default username/passwords). but it does facilitate a better security posture overall. |
|||
|
|
|
Well, by separating the web server from the database server, if a user can exploit the web application and elevate their own privileges they can mess with your data, but only as much as the security model on the database server will let them. For instance, while they can read and write customer data - if they can reverse engineer how the web app does it - they can't bulk download the entire database, or delete it completely, or corrupt/compromise/otherwise degrade it by rewriting its schema. Moreover, new generation application-specific firewalls and IDS systems designed to protect your database server can detect and block unusual access based on known attack signatures and heuristics, protecting your data from compromised client access. This comes in reeeeeal handy if the database server feeds a number of web servers. |
|||
|
|
