Registro de Auditoría de ScyllaDB: Implementación de Auditoría de Bases de Datos Segura y Conforme

En el panorama digital actual, garantizar la integridad, seguridad y cumplimiento de los datos es más crítico que nunca. Para las bases de datos, implementar un registro de auditoría es una medida clave para monitorizar y proteger los datos sensibles. ScyllaDB, una base de datos NoSQL de alto rendimiento, ofrece funciones integradas para auditar datos, proporcionando una capa esencial de supervisión para los administradores.
En este artículo, exploraremos las funciones nativas de auditoría de datos de ScyllaDB utilizando capacidades del lenguaje SQL como vistas y procedimientos almacenados. También profundizaremos en cómo configurar el registro de auditoría de ScyllaDB, visualizar los resultados de la auditoría y mencionaremos brevemente el papel de DataSunrise para la auditoría avanzada de datos en ScyllaDB.
¿Qué es el Registro de Auditoría de ScyllaDB?
Un registro de auditoría se refiere a los registros detallados de todas las operaciones de la base de datos, tales como la manipulación y el acceso a los datos. La funcionalidad nativa de registro de auditoría de ScyllaDB permite a los administradores monitorizar y registrar las interacciones de los usuarios con la base de datos, permitiéndoles rastrear cambios, consultas y otras actividades críticas. Estos registros pueden ser cruciales para garantizar la responsabilidad y cumplir con los requisitos normativos.
Características Clave de la Auditoría de Datos Nativa de ScyllaDB
- Auditoría Granular: Permite a los administradores especificar exactamente qué eventos deben registrarse, desde la manipulación de datos (insertar, actualizar, eliminar) hasta eventos de inicio de sesión.
- Almacenamiento Personalizable: Los datos de auditoría pueden almacenarse ya sea en un registro del sistema (Syslog) o directamente en una tabla de Scylla, dependiendo de la configuración.
- Cobertura Integral: ScyllaDB puede auditar múltiples tipos de eventos, como DML (Lenguaje de Manipulación de Datos), DDL (Lenguaje de Definición de Datos) y DCL (Lenguaje de Control de Datos).
Auditoría Avanzada con ScyllaDB
ScyllaDB proporciona funciones de auditoría para monitorizar las actividades de la base de datos, registrar consultas y garantizar la seguridad de los datos. Esta función está disponible únicamente en Scylla Enterprise, permitiendo a los administradores almacenar registros de auditoría en Syslog o en tablas de Scylla.
Habilitar la Auditoría
La auditoría se configura en el archivo scylla.yaml utilizando el parámetro audit. Las opciones incluyen:
- none – La auditoría está deshabilitada (valor por defecto).
- table – Los registros se almacenan en una tabla de Scylla.
- syslog – Los registros se envían a Syslog.
Ejemplo:
# Habilitar registros de auditoría a syslog audit: "syslog" # Categorías de auditoría: AUTH, DML, DDL, DCL, QUERY, ADMIN audit_categories: "DCL,DDL,AUTH" # Keyspaces y tablas a auditar audit_keyspaces: "mykeyspace" audit_tables: "mykeyspace.mytable"
Reinicie Scylla para aplicar los cambios:
sudo systemctl restart scylla-server
Categorías de Auditoría
- AUTH: Registra eventos de inicio de sesión.
- DML: Rastrea las operaciones INSERT, UPDATE y DELETE.
- DDL: Captura cambios en el esquema como CREATE, ALTER y DROP.
- DCL: Registra las actividades de gestión de permisos y roles.
- QUERY: Registra todas las consultas ejecutadas.
- ADMIN: Audita operaciones a nivel de servicio.
Almacenar Registros de Auditoría en Syslog
Los registros de auditoría se envían por defecto a Syslog: Ejemplo de salida de Syslog para una operación DROP TABLE:
Mar 18 09:53:52 ip-10-143-2-108 scylla-audit[28387]: "10.143.2.108", "DDL", "ONE", "team_roster", "nba", "DROP TABLE nba.team_roster ;", "127.0.0.1", "anonymous", "false"
Para almacenar los registros de auditoría de Syslog en un archivo (ejemplo en CentOS):
- Instale rsyslog:
- Actualice /etc/rsyslog.conf:
- Reinicie rsyslog:
sudo dnf install rsyslog
if $programname contains 'scylla-audit' then /var/log/scylla-audit.log
systemctl start rsyslog systemctl enable rsyslog
Almacenar Registros de Auditoría en una Tabla
Los mensajes de auditoría también pueden guardarse en una tabla de Scylla denominada audit.audit_log:
CREATE TABLE IF NOT EXISTS audit.audit_log ( date timestamp, node inet, event_time timeuuid, category text, consistency text, table_name text, keyspace_name text, operation text, source inet, username text, error boolean, PRIMARY KEY ((date, node), event_time));
Habilite la auditoría basada en tablas en scylla.yaml:
audit: "table" audit_categories: "DCL,DDL,AUTH" audit_keyspaces: "mykeyspace"
Reinicie Scylla:
sudo systemctl restart scylla-server
Ejemplo de consulta para obtener registros de auditoría:
SELECT * FROM audit.audit_log;
Resultado:
| Date | Node | Event Time | Category | Consistency | Error | Keyspace Name | Operation | Source | Table Name | Username |
|---|---|---|---|---|---|---|---|---|---|---|
| 2018-03-18 00:00:00+00 | 10.143.2.108 | 3429b1a5-2a94-11e8-8f4e-000000000001 | DDL | ONE | False | nba | DROP TABLE nba.team_roster | 127.0.0.1 | team_roster | Scylla |
DataSunrise: Una Suite de Seguridad Flexible para ScyllaDB
Si bien las funciones nativas de auditoría de ScyllaDB brindan capacidades básicas de auditoría, DataSunrise ofrece una solución más completa y centralizada para monitorizar y auditar las actividades de la base de datos.
Configuración de DataSunrise para la Auditoría de ScyllaDB
- Crear una Instancia de DataSunrise: Inicie una nueva instancia para la auditoría de ScyllaDB a través de la interfaz de gestión de DataSunrise.

- Configurar las Reglas de Auditoría: Defina las reglas de auditoría, incluyendo qué tablas, keyspaces y eventos se deben monitorizar

- Visualizar los Resultados de la Auditoría: Acceda a los registros detallados de auditoría a través de la página de DataSunrise.

Beneficios de Utilizar DataSunrise para la Auditoría de ScyllaDB
- Control Centralizado: DataSunrise permite una gestión centralizada de las reglas de auditoría en múltiples instancias de ScyllaDB.
- Funciones Avanzadas: Incluye alertas en tiempo real, informes de cumplimiento y enmascaramiento de datos.
- Facilidad de Uso: La interfaz intuitiva e informes detallados permiten a los administradores identificar rápidamente y dar respuesta a actividades sospechosas.
Al integrar DataSunrise con ScyllaDB, se obtiene un sistema de auditoría mejorado que simplifica el cumplimiento normativo y proporciona un mayor control sobre la seguridad de los datos.
Conclusión
Las funciones nativas de auditoría de datos de ScyllaDB ofrecen una forma confiable de rastrear las actividades de la base de datos y garantizar su seguridad. Al configurar ajustes de auditoría para tablas, keyspaces y eventos específicos, se pueden monitorizar y registrar operaciones críticas. Además, DataSunrise potencia estas capacidades al proporcionar una plataforma centralizada para gestionar las reglas de auditoría y asegurar el cumplimiento normativo.
Para las organizaciones que buscan implementar estrategias integrales de seguridad de datos, integrar las funcionalidades de auditoría de ScyllaDB con DataSunrise ofrece una solución potente para monitorizar y proteger los datos sensibles.
Para obtener más información sobre la auditoría en ScyllaDB o para explorar las herramientas avanzadas de seguridad de bases de datos de DataSunrise, visite el sitio web oficial de DataSunrise y vea una demostración en línea.
