DataSunrise Obtient le Statut Compétence DevOps AWS dans AWS DevSecOps et Surveillance, Journalisation, Performance

Audit de base de données dans YugabyteDB

Audit de base de données dans YugabyteDB

Introduction

Dans le paysage numérique actuel, la mise en place de pistes d’audit de bases de données robustes est cruciale pour maintenir la sécurité et la conformité des opérations. De plus, YugabyteDB, une base de données SQL distribuée, offre des fonctionnalités intégrées pour le suivi des activités de la base de données. Parallèlement, elle prend en charge une surveillance améliorée via des solutions tierces.

Fonctionnalités d’audit natives dans YugabyteDB

YugabyteDB utilise l’extension d’audit PostgreSQL (pgaudit) pour fournir un enregistrement d’audit complet. Cette intégration permet ainsi un enregistrement détaillé des sessions et des objets via les journaux YB-TServer, ce qui est essentiel pour répondre à diverses exigences de conformité.

Mise en place de la journalisation d’audit native

Pour activer la journalisation d’audit dans YugabyteDB, les administrateurs peuvent configurer plusieurs approches. Voici les étapes clés pour la mise en place :

  1. Configuration de démarrage du cluster – Vous pouvez configurer la journalisation d’audit en utilisant les options de YB-TServer. Par exemple :

    --ysql_pg_conf_csv="pgaudit.log='all, -misc',pgaudit.log_parameter=on,pgaudit.log_relation=on"
  2. Activer l’extension pgaudit – Dans votre session YSQL, vous pouvez créer l’extension avec la commande suivante :

    CREATE EXTENSION IF NOT EXISTS pgaudit;
  3. Configurer les paramètres de journalisation d’audit – Définissez des options spécifiques de journalisation d’audit. Par exemple :

    -- Activer la journalisation DDL
    SET pgaudit.log = 'DDL';
    -- Enregistrer les paramètres avec les instructions
    SET pgaudit.log_parameter = ON;
    -- Activer la journalisation côté client
    SET pgaudit.log_client = ON;
    SET pgaudit.log_level = notice;

Exemples de sortie du journal d’audit natif

Une fois pgaudit configuré et actif, YugabyteDB enregistre les activités clés dans les journaux YB-TServer. Ces journaux peuvent ensuite être analysés ou consultés à l’aide d’outils de surveillance. Ci-dessous se trouvent deux exemples de tableaux qui illustrent des entrées typiques de journal d’audit :

Exemple 1 : Journal d’activité général

Ce tableau capture une variété d’opérations (SELECT, INSERT, UPDATE, DELETE) sur différentes sessions.

Heure du journalUtilisateurBase de donnéesID de sessionCommandeType d’objetNom de l’objetDétails
2025-02-11 10:15:23adminyugadb8a1b2c3dSELECTtablecustomer_dataExécuté SELECT sur la table customer_data
2025-02-11 10:17:45adminyugadb8a1b2c3dINSERTtableordersInséré un nouvel enregistrement de commande
2025-02-11 10:20:11analystyugadbd4e5f6g7UPDATEtableordersMis à jour le statut de commande en ‘expédié’
2025-02-11 10:22:05analystyugadbd4e5f6g7DELETEtableobsolete_dataSupprimé l’enregistrement avec l’id 123

Exemple 2 : Journal détaillé des opérations DDL et d’écriture

Cette sortie se concentre sur le langage de définition de données (DDL) et les opérations de modification de données, incluant des paramètres supplémentaires et les détails des relations tels que configurés avec pgaudit. Voici quelques entrées d’exemple :

Heure du journalUtilisateurBase de donnéesID de sessionCommandeType d’objetNom de l’objetParamètres de requête
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 avancé avec exemples détaillés

Exemple complet de règle d’audit

-- Créer une table d'exemple pour l'audit
CREATE TABLE sensitive_data (
 user_id SERIAL PRIMARY KEY,
 username TEXT,
 email TEXT,
 credit_card_last4 TEXT
);
-- Configurer un audit étendu
SET pgaudit.log = 'all';
SET pgaudit.log_parameter = ON;
SET pgaudit.log_relation = ON;
-- Effectuer quelques opérations d'exemple
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 amélioré avec DataSunrise

Bien que les capacités natives offrent un audit de base, la solution de surveillance d’activité des bases de données de DataSunrise propose des fonctionnalités avancées spécifiquement conçues pour les bases de données distribuées comme YugabyteDB. Ainsi, elle offre une solution plus complète.

Proxy DataSunrise gérant plusieurs connexions à la base de données

Caractéristiques clés :

  • Surveillance de l’activité en temps réel
  • Pistes d’audit complètes
  • Masquage dynamique des données
  • Politiques de sécurité avancées
  • Rapports automatisés de conformité
Le hub Session Trails de DataSunrise vous permet de gérer les connexions en cours à YugabyteDB

Bonnes pratiques pour l’audit de YugabyteDB

  1. Optimisation des performances – Afin d’optimiser les performances, il est crucial de mettre en œuvre des règles d’audit sélectives. Par exemple:
    • Utiliser des configurations de journalisation ciblées
    • Surveiller l’impact sur les performances du système
    -- Exemple de journalisation sélective
    SET pgaudit.log = 'DDL, WRITE'; -- N'enregistrer que les opérations DDL et d'écriture
    SET pgaudit.log_catalog = OFF; -- Réduire le bruit généré par les journaux du catalogue système
  2. Considérations de sécurité – De plus, il est important de protéger les journaux d’audit, de mettre en œuvre des contrôles d’accès granulaires et de les examiner et de les faire pivoter régulièrement. Ces mesures sont essentielles pour maintenir la sécurité de vos données d’audit.

Conclusion

En conclusion, un audit efficace des bases de données dans YugabyteDB requiert une approche équilibrée entre les capacités natives et les solutions améliorées. Alors que pgaudit natif offre des fonctionnalités de journalisation essentielles, les organisations ayant des exigences de conformité complexes peuvent grandement bénéficier des fonctionnalités avancées de surveillance et de sécurité proposées par des solutions spécialisées comme DataSunrise.

Pour plus d’informations sur la mise en œuvre d’un audit complet des bases de données dans YugabyteDB, consultez la documentation de sécurité de YugabyteDB.

Si vous souhaitez en savoir plus sur l’audit complet des bases de données dans YugabyteDB avec DataSunrise, nous vous recommandons fortement de planifier notre démonstration en ligne ou de télécharger l’outil pour l’explorer par vous-même.

Suivant

Audit de données pour Hydra

Audit de données pour Hydra

En savoir plus

Besoin de l'aide de notre équipe de support ?

Nos experts seront ravis de répondre à vos questions.

Informations générales :
[email protected]
Service clientèle et support technique :
support.datasunrise.com
Demandes de partenariat et d'alliance :
[email protected]