
Auditoría de Base de Datos para Google Cloud SQL

Introducción
En el mundo impulsado por datos de hoy en día, tener una solución de gestión de bases de datos confiable es esencial para mantener la competitividad. A medida que las empresas adoptan técnicas avanzadas para auditoría de bases de datos y seguridad de las bases de datos, los hackers evolucionan continuamente sus métodos para violar los sistemas. Este artículo explora cómo Google Cloud SQL proporciona una plataforma robusta para llevar a cabo auditorías de bases de datos mientras garantiza un alto nivel de cumplimiento y seguridad. Además, cubriremos las mejores prácticas para mejorar la seguridad de tu base de datos SQL.
¿Qué es Google Cloud SQL?
Google Cloud SQL es una plataforma unificada para gestionar bases de datos relacionales, incluyendo MySQL, PostgreSQL y SQL Server (MSSQL). Su interfaz web amigable hace que la ejecución de consultas SQL y la gestión de bases de datos sean sin complicaciones. La plataforma ofrece herramientas para auditar bases de datos de manera confiable, conectar buckets de almacenamiento y configurar entornos seguros, convirtiéndola en una solución flexible para la gestión segura de datos.
Vamos a explorar cómo configurar una auditoría de bases de datos usando Google Cloud SQL.
Configuración de una Auditoría de Base de Datos en Google Cloud SQL
Para configurar una auditoría de base de datos en Google Cloud SQL, comienza asegurándote de que tienes una instancia funcional de base de datos. Esta guía utiliza una instancia de SQL Server Express 19. Un paso crucial implica la configuración de un bucket de almacenamiento para tus registros de auditoría:

Una vez configurado el almacenamiento, puedes proceder con la configuración de la auditoría.
Tipos de Auditorías de Bases de Datos en SQL Server
En SQL Server, las auditorías se categorizan en tres niveles:
- Auditoría a Nivel de Servidor: Realiza un seguimiento de eventos de alto nivel como intentos de autenticación y cambios de gestión.
- Auditoría a Nivel de Base de Datos: Monitorea operaciones de DML (Lenguaje de Manipulación de Datos) y DDL (Lenguaje de Definición de Datos).
- Acciones de Auditoría: Registra actividades relacionadas con el proceso de auditoría.
Aquí te explicamos cómo crear una Auditoría a Nivel de Servidor en SQL Server:
CREATE SERVER AUDIT testAudit TO FILE (FILEPATH = '/var/opt/mssql/audit', MAXSIZE = 10 MB); ALTER SERVER AUDIT testAudit WITH (STATE = ON);
Creando una Especificación de Auditoría
Especifica los eventos a monitorear utilizando una Especificación de Auditoría. Por ejemplo, lo siguiente captura todos los intentos de inicio de sesión fallidos:
CREATE SERVER AUDIT SPECIFICATION testAuditSpec FOR SERVER AUDIT testAudit ADD (FAILED_LOGIN_GROUP) WITH (STATE=ON); ALTER SERVER AUDIT SPECIFICATION testAuditSpec WITH (STATE=ON);
Consulta los resultados de la auditoría usando este procedimiento almacenado:
SELECT * FROM msdb.dbo.gcloudsql_fn_get_audit_file('/var/opt/mssql/audit/*', NULL, NULL);

Ampliando a Auditorías a Nivel de Base de Datos
Para un monitoreo más granular, configura Auditorías a Nivel de Base de Datos. Por ejemplo, para registrar todas las consultas en la base de datos MOCK_DATA por un usuario específico:
CREATE DATABASE AUDIT SPECIFICATION dbSpec FOR SERVER AUDIT testAudit ADD (SELECT ON dbo.MOCK_DATA BY testuser) WITH (STATE = ON);
Los registros de las consultas ejecutadas bajo la cuenta de testuser se almacenarán en el bucket configurado. Puedes recuperar y analizar estos registros de la siguiente manera:
SELECT * FROM msdb.dbo.gcloudsql_fn_get_audit_file('/var/opt/mssql/audit/*', NULL, NULL);

Auditoría Granular basada en Reglas: DataSunrise + Google Cloud SQL
Aunque Google Cloud SQL proporciona herramientas básicas de auditoría, la integración de soluciones de terceros como DataSunrise mejora tus capacidades de auditoría y seguridad de bases de datos. DataSunrise ofrece herramientas completas para la seguridad de bases de datos, asistencia en amenazas en tiempo real y cumplimiento de datos.
Así es como puedes utilizar DataSunrise para configurar reglas de auditoría granulares:
- Agrega la base de datos a la lista de bases de datos gestionadas:

- Crea una regla de auditoría haciendo clic en “Add New Rule”:

- Configura los ajustes generales:

- Configura sesiones de filtro para que solo se auditen las sesiones de testuser:

- Configura un filtro de declaraciones para monitorear solo la base de datos MOCK_DATA:

Guarda tu configuración y consulta los registros de auditoría en la pestaña Transactional Trails:

Estos registros son interactivos y puedes crear reglas separadas para auditar ciertos tipos de consultas:

Mejores Prácticas para la Auditoría de Base de Datos en Google Cloud SQL
Para maximizar el rendimiento y la seguridad al auditar Google Cloud SQL, considera estas mejores prácticas:
- Coloca tanto las instancias de DataSunrise como de MSSQL dentro del Virtual Private Cloud (VPC) de Google.
- Permite conexiones externas solo a través del proxy de DataSunrise para una mayor seguridad.
Convenientemente, DataSunrise está disponible en el Google Cloud Marketplace para facilitar la configuración de tal entorno.
Conclusión
Llevar a cabo una auditoría de base de datos es una tarea compleja pero crítica para garantizar el cumplimiento de los estándares regulatorios y protegerse contra amenazas de seguridad. Utiliza una combinación de herramientas integradas de MSSQL y soluciones avanzadas de terceros como DataSunrise para lograr una cobertura de auditoría completa y una seguridad mejorada de la base de datos. Aprovechando Google Cloud SQL como tu plataforma, simplificas la configuración y la gestión mientras aseguras una protección robusta de datos.