DataSunrise Consegue la Certificazione AWS DevOps Competency per AWS DevSecOps e Monitoraggio, Logging e Performance

Traccia di Audit dei Dati di ScyllaDB

Traccia di Audit dei Dati di ScyllaDB

L’auditing dei dati è un aspetto cruciale della gestione dei database, che consente agli amministratori di monitorare e tracciare modifiche, query ed eventi all’interno dei loro sistemi. ScyllaDB offre strumenti robusti per l’auditing dei dati, garantendo conformità, sicurezza ed efficienza operativa. Questo articolo esplora le capacità native della traccia di audit dei dati di ScyllaDB e i benefici aggiuntivi dell’integrazione di DataSunrise per un auditing completo del database.

Comprendere le Tracce di Audit dei Dati

Una traccia di audit dei dati cattura meticolosamente ogni operazione all’interno di un database, documentando attività quali modifiche ai dati, query eseguite e azioni amministrative. Questo registro esaustivo consente alle organizzazioni di mantenere la conformità normativa, di identificare e affrontare tempestivamente le vulnerabilità di sicurezza e di analizzare i dati storici per individuare tendenze e approfondimenti, rafforzando così la trasparenza operativa e il controllo.

ScyllaDB facilita questo processo attraverso sia le capacità native sia strumenti esterni, consentendo il tracciamento e l’analisi efficace degli eventi del database per svariate esigenze aziendali.

Funzionalità di Auditing Nativo di ScyllaDB

ScyllaDB Enterprise supporta l’auditing dei dati nativo configurando il file scylla.yaml. Gli amministratori possono registrare le attività in un Syslog oppure in una tabella di ScyllaDB, a seconda delle proprie preferenze per l’archiviazione e il monitoraggio.

Abilitare l’Auditing in ScyllaDB

Per abilitare l’auditing, imposti il parametro audit nel file scylla.yaml:

  • none: Disabilita l’auditing (predefinito).
  • table: Memorizza i log di audit in una tabella di ScyllaDB.
  • syslog: Invia i log di audit a Syslog.

Esempio di configurazione per l’auditing:

# Impostazioni Audit
audit: "table"
# Categorie di Audit
audit_categories: "DCL,DDL,AUTH"
# Tabelle e keyspace specifici da monitorare
audit_tables: "mykeyspace.mytable"
audit_keyspaces: "mykeyspace"

Riavii il nodo Scylla per applicare le modifiche:

sudo systemctl restart scylla-server

Parametri di Audit Configurabili

ScyllaDB consente di perfezionare le impostazioni di audit utilizzando i seguenti parametri:

ParametroDescrizione
audit_categoriesElenco separato da virgola delle categorie di eventi.
audit_tablesTabelle da monitorare nel formato <keyspace>.<table>.
audit_keyspacesKeyspace da monitorare per intero.

Categorie di Eventi

  • AUTH: Registra eventi di login.
  • DML: Traccia la manipolazione dei dati (INSERT, UPDATE, DELETE).
  • DDL: Registra le modifiche dello schema (CREATE, ALTER, DROP).
  • DCL: Registra le modifiche ai permessi.
  • QUERY: Cattura tutte le query (elevato sovraccarico di storage).
  • ADMIN: Registra operazioni amministrative.

Visualizzazione dei Log di Audit

I log vengono memorizzati in base al metodo configurato:

Esempio Syslog

I log appaiono nel Syslog del sistema sotto il nome del processo scylla-audit. Esempio di output:

Mar 18 09:53:52 scylla-audit[28387]: "10.143.2.108", "DDL", "ONE", "team_roster", "nba", "DROP TABLE nba.team_roster;", "127.0.0.1", "anonymous", "false"

Esempio Tabella

I log di audit memorizzati in una tabella possono essere interrogati utilizzando SQL:

SELECT * FROM audit.audit_log;

Output:

datacategoriakeyspace_nameoperazione
2024-12-01 12:00:00DDLnbaDROP TABLE nba.team_roster;

Auditing dei Dati Nativo tramite SQL

ScyllaDB supporta l’auditing tramite funzionalità SQL come le viste e le stored procedure. Esploriamo alcuni esempi.

Utilizzo delle Viste per l’Auditing

Le viste possono tracciare le modifiche creando una vista di audit collegata a una tabella:

CREATE MATERIALIZED VIEW audit_view AS
SELECT * FROM mykeyspace.mytable
WHERE timestamp > now() - interval '1 day';

Utilizzo di Stored Procedure per l’Auditing

Le stored procedure possono registrare eventi in una tabella di audit personalizzata:

CREATE OR REPLACE FUNCTION log_audit(event TEXT, user TEXT)
RETURNS VOID AS $$
BEGIN
INSERT INTO mykeyspace.audit_log (event, user, event_time)
VALUES (event, user, NOW());
END;
$$ LANGUAGE plpgsql;

Connessione a ScyllaDB

Per connettersi e configurare l’auditing, utilizzi il client preferito, come cqlsh o un linguaggio di programmazione come Python:

from cassandra.cluster import Cluster
cluster = Cluster(["127.0.0.1"])
session = cluster.connect("mykeyspace")
session.execute("ALTER TABLE mytable ...")

Integrazione di DataSunrise per l’Auditing in ScyllaDB

DataSunrise migliora l’auditing di ScyllaDB con funzionalità avanzate, fornendo controllo centralizzato e analisi dettagliate.

Configurazione di DataSunrise per l’Auditing in ScyllaDB

  1. Crea un’Istanza: Avvii una nuova istanza di DataSunrise e si connetta al suo database ScyllaDB.
  2. Configura i Filtri: Definisca le istruzioni di filtro per l’auditing:
  • Gruppo Oggetti: Monitora specifici oggetti del database.
Configurazione del gruppo oggetti di ScyllaDB in DataSunrise
  • Gruppo Query: Filtra le query in base ai tipi (DML, DDL).
Opzioni di filtro del gruppo query per ScyllaDB in DataSunrise
  • Tipi di Query: Rileva tentativi di SQL injection.
Schermata di configurazione dei tipi di query in DataSunrise
  • SQL Injection:
Schermata di rilevamento SQL injection in DataSunrise
  • Eventi di Sessione: Cattura le attività delle sessioni degli utenti.
Visualizzazione del monitoraggio degli eventi di sessione in DataSunrise

Visualizzazione dei Dati di Audit in DataSunrise

I risultati dell’audit sono disponibili nel cruscotto di DataSunrise. È possibile esportare i log o generare report per l’analisi.

Schermata dei risultati dell’audit in DataSunrise che mostra dettagli delle query e timestamp

Vantaggi di DataSunrise

  • Controllo Centralizzato: Regole uniformi su più database.
  • Assicurazione della Conformità: Semplifica il rispetto dei requisiti normativi.
  • Sicurezza Avanzata: Rileva comportamenti anomali, inclusi i tentativi di SQL injection.

Conclusione

Implementare una traccia di audit dei dati in ScyllaDB è un passo fondamentale verso una sicurezza robusta del database e un controllo operativo efficace. Le funzionalità di auditing nativo di ScyllaDB forniscono meccanismi precisi e configurabili per monitorare le azioni degli utenti e le modifiche al database, garantendo conformità e individuando potenziali vulnerabilità. Sfruttando strumenti basati su SQL, come viste e stored procedure, gli amministratori possono realizzare processi di auditing personalizzati e adattabili alle esigenze organizzative.

L’integrazione di DataSunrise eleva ulteriormente questa capacità offrendo auditing e sicurezza centralizzati. I filtri avanzati della piattaforma e il monitoraggio delle sessioni assicurano un approccio uniforme alla governance dei dati su più sistemi, migliorando la conformità e l’efficienza operativa. Inoltre, le analisi e i report dettagliati di DataSunrise semplificano l’identificazione di anomalie e minacce.

Per scoprire come DataSunrise può semplificare ed elevare la strategia di auditing del database, visiti il sito ufficiale e scopra le sue funzionalità complete attraverso una dimostrazione online.

Successivo

Traccia di Audit di CockroachDB

Traccia di Audit di CockroachDB

Scopri di più

Ha bisogno del nostro team di supporto?

I nostri esperti saranno lieti di rispondere alle Sue domande.

Informazioni generali:
[email protected]
Servizio clienti e supporto tecnico:
support.datasunrise.com
Richieste di collaborazione e alleanza:
[email protected]