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

Audit del Database in YugabyteDB

Audit del Database in YugabyteDB

Introduzione

Nell’attuale scenario digitale, implementare robuste tracce di audit del database è fondamentale per mantenere la sicurezza e la conformità nelle operazioni del database. Inoltre, YugabyteDB, un database SQL distribuito, offre capacità integrate per il tracciamento delle attività del database. Allo stesso tempo, supporta un monitoraggio avanzato tramite soluzioni di terze parti.

Capacità di Audit Native in YugabyteDB

YugabyteDB utilizza l’estensione PostgreSQL Audit (pgaudit) per fornire una completa registrazione di audit. Tale integrazione consente, infatti, una dettagliata registrazione delle sessioni e degli oggetti tramite il logging di YB-TServer, aspetto essenziale per soddisfare i vari requisiti di conformità.

Configurazione della Registrazione di Audit Nativa

Per abilitare la registrazione di audit in YugabyteDB, gli amministratori possono configurare diverse modalità. Di seguito i passaggi chiave per la configurazione:

  1. Configurazione all’avvio del Cluster – È possibile configurare la registrazione di audit utilizzando le flag di YB-TServer. Ad esempio:

    --ysql_pg_conf_csv="pgaudit.log='all, -misc',pgaudit.log_parameter=on,pgaudit.log_relation=on"
  2. Abilitare l’estensione pgaudit – Nella Sua sessione YSQL, può creare l’estensione con il seguente comando:

    CREATE EXTENSION IF NOT EXISTS pgaudit;
  3. Configurare i Parametri della Registrazione di Audit – Impostare specifiche opzioni per il logging di audit. Ad esempio:

    -- Abilita il logging DDL
    SET pgaudit.log = 'DDL';
    -- Registra i parametri con le istruzioni
    SET pgaudit.log_parameter = ON;
    -- Abilita il logging lato client
    SET pgaudit.log_client = ON;
    SET pgaudit.log_level = notice;

Esempi di Output della Registrazione di Audit Nativa

Una volta configurato e attivato pgaudit, YugabyteDB registra le attività chiave nei log di YB-TServer. Tali log possono essere poi analizzati o visualizzati attraverso strumenti di monitoraggio. Di seguito sono riportati due esempi di tabelle che mostrano le tipiche voci del log di audit:

Esempio 1: Log delle Attività Generali

Questa tabella raccoglie una varietà di operazioni (SELECT, INSERT, UPDATE, DELETE) effettuate in differenti sessioni.

Data/OraUtenteDatabaseID SessioneComandoTipo di OggettoNome OggettoDettagli
2025-02-11 10:15:23adminyugadb8a1b2c3dSELECTtablecustomer_dataEseguito SELECT sulla tabella customer_data
2025-02-11 10:17:45adminyugadb8a1b2c3dINSERTtableordersInserito un nuovo record d’ordine
2025-02-11 10:20:11analystyugadbd4e5f6g7UPDATEtableordersAggiornato lo stato dell’ordine a ‘shipped’
2025-02-11 10:22:05analystyugadbd4e5f6g7DELETEtableobsolete_dataEliminato record con id 123

Esempio 2: Log Dettagliato delle Operazioni DDL e di Scrittura

Questo output è focalizzato su operazioni DDL e di modifica dei dati, inclusi parametri supplementari e dettagli sulle relazioni come configurato con pgaudit. Di seguito alcune voci di esempio:

Data/OraUtenteDatabaseID SessioneComandoTipo di OggettoNome OggettoParametri della Query
2025-02-11 11:05:10dbayugadbf7g8h9i0CREATEtablesensitive_dataCREATE TABLE sensitive_data ( … )
2025-02-11 11:06:50dbayugadbf7g8h9i0ALTERtablesensitive_dataALTER TABLE sensitive_data ADD COLUMN …
2025-02-11 11:10:32app_useryugadbj1k2l3m4INSERTtablesensitive_dataINSERT INTO sensitive_data (username, email, …)
2025-02-11 11:15:44app_useryugadbj1k2l3m4UPDATEtablesensitive_dataUPDATE sensitive_data SET email = ‘…’ WHERE …

Audit Avanzato con Esempi Dettagliati

Esempio Completo di Regola di Audit

-- Crea una tabella di esempio da auditare
CREATE TABLE sensitive_data (
 user_id SERIAL PRIMARY KEY,
 username TEXT,
 email TEXT,
 credit_card_last4 TEXT
);
-- Configura un auditing estensivo
SET pgaudit.log = 'all';
SET pgaudit.log_parameter = ON;
SET pgaudit.log_relation = ON;
-- Esegui alcune operazioni di esempio
INSERT INTO sensitive_data (username, email, credit_card_last4)
VALUES ('johndoe', '[email protected]', '1234');
UPDATE sensitive_data
SET email = '[email protected]'
WHERE username = 'johndoe';

Audit Potenziato con DataSunrise

Mentre le capacità native forniscono un auditing di base, la soluzione di monitoraggio delle attività del database di DataSunrise offre funzionalità avanzate specificamente progettate per database distribuiti come YugabyteDB. Pertanto, essa rappresenta una soluzione più completa.

Proxy di DataSunrise che gestisce molteplici connessioni al database

Caratteristiche Chiave:

Il centro Tracce di Audit di DataSunrise consente di gestire le connessioni in corso a YugabyteDB

Buone Pratiche per l’Auditing in YugabyteDB

  1. Ottimizzazione delle Prestazioni – Per ottimizzare le prestazioni, è fondamentale implementare regole di audit selettive. Ad esempio:
    • Utilizzare configurazioni di logging mirate
    • Monitorare l’impatto sulle prestazioni del sistema
    -- Esempio di logging selettivo
    SET pgaudit.log = 'DDL, WRITE'; -- Registrare solo operazioni DDL e di scrittura
    SET pgaudit.log_catalog = OFF; -- Ridurre il rumore dai log del catalogo di sistema
  2. Considerazioni sulla Sicurezza – Inoltre, è importante proteggere i log di audit, implementare controlli di accesso granulari e rivedere regolarmente e ruotare i log. Queste misure sono essenziali per mantenere la sicurezza dei dati di audit.

Conclusione

In conclusione, un efficace auditing del database in YugabyteDB richiede un approccio bilanciato tra capacità native e soluzioni potenziate. Mentre pgaudit nativo offre funzionalità di logging essenziali, le organizzazioni con requisiti di conformità complessi possono trarre grande beneficio dalle funzionalità avanzate di monitoraggio e sicurezza offerte da soluzioni specializzate come DataSunrise.

Per ulteriori informazioni sull’implementazione di un auditing completo del database in YugabyteDB, La invitiamo a consultare la documentazione sulla sicurezza di YugabyteDB.

Se desidera saperne di più sul comprehensive database audit in YugabyteDB con DataSunrise, Le raccomandiamo vivamente di prenotare una nostra demo online o di scaricare lo strumento per esplorarlo personalmente.

Successivo

Audit dei Dati per Hydra

Audit dei Dati per Hydra

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]