Una conexión de base de datos le permitirá al usuario hacer prácticamente cualquier cosa que le guste a la base de datos, siempre que tenga los derechos de acceso. Abra una conexión directamente a Internet, y lo único que impide que un usuario tenga acceso a la cuenta de administrador es el secreto de la contraseña de la cuenta de administrador. En su mayor parte, no verá un sistema de base de datos creado teniendo en cuenta este tipo de acceso, por lo que no verá protecciones en la base de datos que están diseñadas para este uso.
Dado el acceso de administrador y la conectividad, un pirata informático puede:
- eliminar la base de datos por completo
- reescribe el esquema de la base de datos
- cambia el tamaño de la base de datos, consumiendo más recursos de la máquina de lo que pretendías
- cambiar los datos en la base de datos
Entonces ... la pregunta de retorno es: ¿cuál es el propósito de la base de datos y cuánto importa la integridad? Si esta es una base de datos de prueba para un proyecto de un estudiante, es posible que le interese más la máquina que la base de datos. Pero en la mayoría de las aplicaciones, la información en la base de datos y su validez, disponibilidad y confiabilidad son el corazón del sistema. Olvídelo o pierda su confianza en él y, en muchos casos, ya no tiene un negocio en funcionamiento.
Sin embargo, hablando como un desarrollador web, el principal factor para tener una aplicación web aún no es la seguridad, es su funcionalidad. La gente no tiende a pensar en SQL, por lo que necesita una interfaz que permita a un usuario menos técnico ver y manipular los datos de manera que el usuario pueda comprenderlos. Una vez que admite, incluso en un caso, que necesita un servidor web o un servidor de aplicaciones para convertir los datos en una página legible por el usuario, entonces ha eliminado la necesidad de aumentar los costos de almacenamiento en etapas del servidor de aplicaciones. Y una vez que ha invertido tiempo y energía en desarrollar formularios u otros mecanismos de entrada de datos que el usuario promedio puede usar, ha invertido lo suficiente en el sitio en general, que hacerlo correctamente, con prácticas de seguridad sólidas, es una inversión inteligente, no solo para proteja sus datos, pero para proteger el valor de la inversión en la creación de la aplicación.