DDBMS: seguridad en bases de datos distribuidas
Un sistema distribuido necesita medidas de seguridad adicionales que un sistema centralizado, ya que hay muchos usuarios, datos diversificados, múltiples sitios y control distribuido. En este capítulo, veremos las diversas facetas de la seguridad de bases de datos distribuidas.
En los sistemas de comunicación distribuida, hay dos tipos de intrusos:
Passive eavesdroppers - Monitorizan los mensajes y obtienen información privada.
Active attackers - No solo controlan los mensajes, sino que también corrompen los datos insertando nuevos datos o modificando los existentes.
Las medidas de seguridad abarcan la seguridad en las comunicaciones, la seguridad en los datos y la auditoría de datos.
Seguridad de las comunicaciones
En una base de datos distribuida, se produce una gran cantidad de comunicación de datos debido a la ubicación diversificada de datos, usuarios y transacciones. Por tanto, exige una comunicación segura entre los usuarios y las bases de datos y entre los diferentes entornos de bases de datos.
La seguridad en la comunicación abarca lo siguiente:
Los datos no deben estar corruptos durante la transferencia.
El canal de comunicación debe estar protegido contra intrusos pasivos y atacantes activos.
Para lograr los requisitos mencionados anteriormente, deben adoptarse algoritmos y protocolos de seguridad bien definidos.
Dos tecnologías populares y consistentes para lograr comunicaciones seguras de un extremo a otro son:
- Protocolo de capa de conexión segura o Protocolo de seguridad de capa de transporte.
- Redes privadas virtuales (VPN).
Seguridad de datos
En los sistemas distribuidos, es imperativo adoptar medidas para proteger los datos además de las comunicaciones. Las medidas de seguridad de los datos son:
Authentication and authorization- Son las medidas de control de acceso adoptadas para garantizar que solo los usuarios auténticos puedan utilizar la base de datos. Para proporcionar autenticación se utilizan certificados digitales. Además, el inicio de sesión está restringido mediante la combinación de nombre de usuario / contraseña.
Data encryption - Los dos enfoques para el cifrado de datos en sistemas distribuidos son:
Enfoque de base de datos interna a distribuida: las aplicaciones de usuario cifran los datos y luego almacenan los datos cifrados en la base de datos. Para usar los datos almacenados, las aplicaciones obtienen los datos cifrados de la base de datos y luego los descifran.
Base de datos externa a distribuida: el sistema de base de datos distribuida tiene sus propias capacidades de cifrado. Las aplicaciones de usuario almacenan datos y los recuperan sin darse cuenta de que los datos se almacenan en forma cifrada en la base de datos.
Validated input- En esta medida de seguridad, la aplicación del usuario verifica cada entrada antes de que pueda usarse para actualizar la base de datos. Una entrada no validada puede provocar una amplia gama de vulnerabilidades como saturación del búfer, inyección de comandos, secuencias de comandos entre sitios y corrupción de datos.
Auditoría de datos
Un sistema de seguridad de base de datos necesita detectar y monitorear las violaciones de seguridad para determinar las medidas de seguridad que debe adoptar. A menudo es muy difícil detectar una brecha de seguridad en el momento de las ocurrencias. Un método para identificar violaciones de seguridad es examinar los registros de auditoría. Los registros de auditoría contienen información como:
- Fecha, hora y lugar de los intentos de acceso fallidos.
- Detalles de intentos de acceso exitosos.
- Modificaciones vitales en el sistema de base de datos.
- Acceso a grandes cantidades de datos, especialmente de bases de datos en varios sitios.
Toda la información anterior da una idea de las actividades en la base de datos. Un análisis periódico del registro ayuda a identificar cualquier actividad no natural junto con su sitio y hora de ocurrencia. Idealmente, este registro se almacena en un servidor separado para que sea inaccesible para los atacantes.