Guida Completa allo Storico delle Attività del Database di YugabyteDB

Introduzione
In un mondo guidato dai dati, monitorare lo storico delle attività del database in YugabyteDB è fondamentale per la sicurezza, il monitoraggio delle prestazioni e il rispetto delle normative vigenti. Lo storico delle attività del database di YugabyteDB fornisce potenti strumenti per catturare e analizzare l’attività del database, offrendo preziose informazioni sui modelli di utilizzo del database. Sfruttando queste capacità, le organizzazioni possono migliorare il controllo, rilevare anomalie e assicurare la conformità alle normative di settore, come GDPR e HIPAA.
Capacità di Tracciamento Nativo
Lo storico delle attività del database in YugabyteDB può essere monitorato tramite vari meccanismi integrati. Sebbene YugabyteDB non supporti completamente l’estensione pgaudit di PostgreSQL, esso fornisce il logging delle query, file di log esterni e il tracciamento basato su tabelle per catturare eventi chiave del database, quali modifiche dello schema e accesso ai dati.
Monitoraggio di Base dell’Attività
Abilitazione del Logging delle Query
Un’alternativa consigliata a pgaudit è abilitare il logging delle query, che aiuta a tracciare le istruzioni SQL eseguite. Configuri questa funzione nelle impostazioni di yb-tserver:
# Abilitare il logging delle query in YugabyteDB
yb-tserver --ysql_log_statement=all --ysql_log_min_duration_statement=0All’interno di una sessione, abiliti il logging dinamicamente:
SET ysql_log_statement = 'all';
SET ysql_log_min_duration_statement = 0;Tracciamento dell’Attività con una Tabella di Log
Un altro approccio per tracciare lo storico delle attività del database in YugabyteDB consiste nel catturare manualmente le interazioni utilizzando una tabella di log dedicata:
CREATE TABLE database_interactions (
interaction_id SERIAL PRIMARY KEY,
session_id TEXT,
action_type TEXT,
object_name TEXT,
query_text TEXT,
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO database_interactions (session_id, action_type, object_name, query_text)
VALUES
('sess_101', 'LOGIN', 'system', 'Tentativo di login utente'),
('sess_102', 'QUERY', 'customer_records', 'SELECT * FROM customer_records');Esempio di Output dello Storico delle Attività del Database
| Orario Evento | ID Sessione | Azione | Oggetto | Dettagli |
|---|---|---|---|---|
| 2024-02-10 14:30:45 | sess_101 | LOGIN | system | Autenticazione utente riuscita |
| 2024-02-10 14:30:46 | sess_102 | QUERY | customer_records | Eseguita scansione completa della tabella |
| 2024-02-10 14:30:47 | sess_103 | DDL | user_permissions | Schema della tabella modificato |
Monitoraggio Avanzato con DataSunrise
Per le organizzazioni che richiedono capacità di monitoraggio avanzate, soluzioni come DataSunrise offrono approfondimenti più dettagliati ed avvisi di sicurezza in tempo reale. DataSunrise agisce come un Proxy di Database, proteggendo sia gli strati API PostgreSQL che Cassandra di YugabyteDB.
Configurazione del Monitoraggio con DataSunrise
Per integrare YugabyteDB con DataSunrise, selezioni il tipo di API appropriato all’interno dell’interfaccia web:
Aggiunta dell’istanza PostgreSQL in DataSunrise per monitorare l’attività del database di YugabyteDB.
Una volta connesso, crei una regola di audit per registrare gli eventi del database in modo efficiente:
Creazione di una regola di audit in DataSunrise per registrare gli eventi del database in YugabyteDB.
La scheda “Reporting” offre opzioni per generare report dettagliati sullo storico delle attività del database in YugabyteDB. Per creare un nuovo report, navighi su “Report Gen,” clicchi su “New Task” e selezioni il tipo di report “Audit”:
Attività del Report Generator in DataSunrise per generare report dello storico delle attività del database di YugabyteDB.
Scegli l’istanza YugabyteDB preferita, salvi l’attività e la avvii dalla pagina principale:
Avvio del processo di generazione report in DataSunrise per il monitoraggio dell’attività di YugabyteDB.
Queste funzionalità aiutano a garantire una migliore sicurezza e conformità alle normative come GDPR e HIPAA. Per saperne di più sulla sicurezza nel database con DataSunrise, può prenotare una demo online personale o scaricare la versione di prova per esplorare lo strumento personalmente.
Migliori Pratiche
Ottimizzazione delle Prestazioni
- Abilitare il logging selettivo per ridurre il sovraccarico.
- Configurare il tracciamento mirato delle attività in base a requisiti specifici.
- Rivedere e ottimizzare regolarmente le impostazioni di logging.
CREATE ROLE database_analyst WITH LOGIN;
GRANT SELECT ON database_activity_summary TO database_analyst;Conformità e Sicurezza
- Implementare controlli di accesso granulari per proteggere i dati sensibili.
- Definire politiche di conservazione chiare per i log delle attività.
- Criptare i log e limitare l’accesso agli utenti autorizzati.
- Eseguire audit regolari dei meccanismi di tracciamento per garantire l’integrità.
Conclusioni
Gestire lo storico delle attività del database in YugabyteDB richiede un equilibrio tra un tracciamento completo e l’efficienza delle prestazioni. Mentre il logging nativo e il tracciamento basato su tabelle offrono informazioni fondamentali, integrare soluzioni di monitoraggio avanzate come DataSunrise può fornire una visibilità e una sicurezza maggiori. Seguendo le migliori pratiche, le organizzazioni possono creare un ambiente di database sicuro e ben auditato che soddisfi i requisiti di conformità e le necessità operative.
Per ulteriori indicazioni dettagliate, si prega di fare riferimento alla documentazione sulla sicurezza di YugabyteDB oppure esplorare le soluzioni di monitoraggio avanzato di DataSunrise.
