
Traccia di Audit di ScyllaDB: Implementazione di un Audit del Database Sicuro e Conforme

Nell’attuale panorama digitale, garantire l’integrità, la sicurezza e la conformità dei dati è più importante che mai. Per i database, implementare una traccia di audit è una misura fondamentale per monitorare e proteggere i dati sensibili. ScyllaDB, un database NoSQL ad alte prestazioni, offre funzionalità integrate per l’audit dei dati, fornendo un livello essenziale di supervisione per gli amministratori.
In questo articolo, esploreremo le funzionalità native di audit dei dati di ScyllaDB utilizzando le capacità del linguaggio SQL, come le view e le stored procedure. Esamineremo inoltre come configurare la traccia di audit di ScyllaDB, visualizzare i risultati dell’audit e toccheremo brevemente il ruolo di DataSunrise per un audit avanzato dei dati in ScyllaDB.
Che cos’è la Traccia di Audit di ScyllaDB?
Una traccia di audit si riferisce ai log dettagliati di tutte le operazioni effettuate sul database, come la manipolazione dei dati e l’accesso. La funzionalità nativa di traccia di audit di ScyllaDB consente agli amministratori di monitorare e registrare le interazioni degli utenti con il database, permettendo di tracciare le modifiche, le query e altre attività critiche. Questi log possono essere fondamentali per garantire la responsabilità e soddisfare i requisiti normativi.
Caratteristiche Chiave dell’Audit dei Dati Nativo di ScyllaDB
- Audit Granulare: Consente agli amministratori di specificare esattamente quali eventi debbano essere registrati, dalla manipolazione dei dati (insert, update, delete) agli eventi di login.
- Memorizzazione Personalizzabile: I dati di audit possono essere memorizzati in un log di sistema (Syslog) o direttamente in una tabella di Scylla, a seconda della configurazione.
- Copertura Completa: ScyllaDB può eseguire l’audit di diversi tipi di eventi, come DML (Data Manipulation Language), DDL (Data Definition Language) e DCL (Data Control Language).
Audit Avanzato con ScyllaDB
ScyllaDB offre funzionalità di audit per monitorare le attività del database, registrare le query e garantire la sicurezza dei dati. Questa funzionalità è disponibile solo in Scylla Enterprise, permettendo agli amministratori di memorizzare i log di audit in Syslog o nelle tabelle di Scylla.
Abilitazione dell’Audit
L’audit è configurato nel file scylla.yaml utilizzando il parametro audit. Le opzioni includono:
- none – L’audit è disabilitato (predefinito).
- table – I log sono memorizzati in una tabella di Scylla.
- syslog – I log vengono inviati a Syslog.
Esempio:
# Enable audit logs to syslog audit: "syslog" # Audit categories: AUTH, DML, DDL, DCL, QUERY, ADMIN audit_categories: "DCL,DDL,AUTH" # Keyspaces and tables to audit audit_keyspaces: "mykeyspace" audit_tables: "mykeyspace.mytable"
Riavvia Scylla per applicare le modifiche:
sudo systemctl restart scylla-server
Categorie di Audit
- AUTH: Registra eventi di login.
- DML: Traccia le operazioni INSERT, UPDATE e DELETE.
- DDL: Cattura le modifiche allo schema come CREATE, ALTER e DROP.
- DCL: Registra le attività di gestione dei permessi e dei ruoli.
- QUERY: Registra tutte le query eseguite.
- ADMIN: Esegue l’audit delle operazioni a livello di servizio.
Memorizzazione dei Log di Audit in Syslog
I log di audit vengono indirizzati a Syslog per impostazione predefinita: Esempio di output Syslog per un’operazione 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"
Per memorizzare i log di audit di Syslog in un file (esempio CentOS):
- Installa rsyslog:
- Aggiorni /etc/rsyslog.conf:
- Riavvii rsyslog:
sudo dnf install rsyslog
if $programname contains 'scylla-audit' then /var/log/scylla-audit.log
systemctl start rsyslog systemctl enable rsyslog
Memorizzazione dei Log di Audit in una Tabella
I messaggi di audit possono anche essere salvati in una tabella di Scylla denominata 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));
Abilitare l’audit basato su tabella in scylla.yaml:
audit: "table" audit_categories: "DCL,DDL,AUTH" audit_keyspaces: "mykeyspace"
Riavvia Scylla:
sudo systemctl restart scylla-server
Esempio di query per recuperare i log di audit:
SELECT * FROM audit.audit_log;
Risultato:
Data | Nodo | Ora Evento | Categoria | Consistenza | Errore | Nome del Keyspace | Operazione | Sorgente | Nome della Tabella | Nome Utente |
---|---|---|---|---|---|---|---|---|---|---|
2018-03-18 00:00:00+00 | 10.143.2.108 | 3429b1a5-2a94-11e8-8f4e-000000000001 | DDL | ONE | Falso | nba | DROP TABLE nba.team_roster | 127.0.0.1 | team_roster | Scylla |
DataSunrise: Una Suite di Sicurezza Flessibile per ScyllaDB
Mentre le funzionalità native di audit di ScyllaDB offrono capacità di audit di base, DataSunrise offre una soluzione più completa e centralizzata per monitorare e audit delle attività del database.
Configurazione di DataSunrise per l’Audit di ScyllaDB
- Crea un’Istanza di DataSunrise: Avvii una nuova istanza per l’audit di ScyllaDB tramite l’interfaccia di gestione di DataSunrise.

- Configuri le Regole di Audit: Definisca le regole di audit, inclusi quali tabelle, keyspace ed eventi monitorare.

- Visualizzi i Risultati dell’Audit: Acceda ai log di audit dettagliati tramite la pagina di DataSunrise.

Vantaggi dell’Uso di DataSunrise per l’Audit di ScyllaDB
- Controllo Centralizzato: DataSunrise consente la gestione centralizzata delle regole di audit su più istanze di ScyllaDB.
- Funzionalità Avanzate: Include avvisi in tempo reale, report di conformità e mascheramento dei dati.
- Facilità d’Uso: L’interfaccia intuitiva e i report dettagliati consentono agli amministratori di identificare e rispondere rapidamente alle attività sospette.
Integrando DataSunrise con ScyllaDB, si ottiene un sistema di audit potenziato che semplifica la conformità e offre un migliore controllo sulla sicurezza dei dati.
Conclusione
Le funzionalità native di audit dei dati di ScyllaDB offrono un metodo affidabile per tracciare le attività del database e garantire la sicurezza. Configurando le impostazioni di audit per tabelle, keyspace ed eventi specifici, è possibile monitorare e registrare operazioni cruciali. Inoltre, DataSunrise potenzia queste capacità offrendo una piattaforma centralizzata per la gestione delle regole di audit e garantendo la conformità in linea con gli standard.
Per le organizzazioni che desiderano implementare strategie comprensive di sicurezza dei dati, integrare le funzionalità di audit di ScyllaDB con DataSunrise offre una soluzione potente per monitorare e proteggere i dati sensibili.
Per ulteriori informazioni sull’audit di ScyllaDB o per esplorare gli strumenti avanzati di sicurezza nel database di DataSunrise, visiti il sito ufficiale di DataSunrise per una dimostrazione online.