Piste d’audit des données ScyllaDB
L’audit des données est un aspect crucial de la gestion des bases de données, permettant aux administrateurs de surveiller et de suivre les modifications, les requêtes et les événements au sein de leurs systèmes. ScyllaDB offre des outils robustes pour l’audit des données, garantissant la conformité, la sécurité et l’efficacité opérationnelle. Cet article explore les capacités natives de piste d’audit des données de ScyllaDB et les avantages supplémentaires de l’intégration de DataSunrise pour un audit complet des bases de données.
Comprendre les pistes d’audit des données
Une piste d’audit des données capture minutieusement chaque opération au sein d’une base de données, en documentant des activités telles que les modifications de données, les requêtes exécutées et les actions administratives. Cet enregistrement complet permet aux organisations de maintenir la conformité réglementaire, d’identifier et de résoudre rapidement les vulnérabilités de sécurité, et d’analyser les données historiques pour des tendances et des informations, renforçant ainsi la transparence et le contrôle opérationnels.
ScyllaDB facilite ce processus grâce à des capacités natives et des outils externes, permettant un suivi et une analyse efficaces des événements de la base de données pour divers besoins commerciaux.
Fonctionnalités natives d’audit de données de ScyllaDB
ScyllaDB Enterprise prend en charge l’audit des données natif en configurant le fichier scylla.yaml. Les administrateurs peuvent consigner les activités soit dans un Syslog soit dans une table ScyllaDB, selon leurs préférences de stockage et de surveillance.
Activation de l’audit de ScyllaDB
Pour activer l’audit, définissez le paramètre audit dans le fichier scylla.yaml :
- none : Désactive l’audit (par défaut).
- table : Stocke les journaux d’audit dans une table ScyllaDB.
- syslog : Envoie les journaux d’audit à Syslog.
Exemple de configuration pour l’audit :
# Paramètres d'audit audit: "table" # Catégories d'audit audit_categories: "DCL,DDL,AUTH" # Tables et espaces de clés spécifiques à auditer audit_tables: "mykeyspace.mytable" audit_keyspaces: "mykeyspace"
Redémarrez le nœud Scylla pour appliquer les modifications :
sudo systemctl restart scylla-server
Paramètres d’audit configurables
ScyllaDB permet de peaufiner les paramètres d’audit en utilisant les paramètres suivants :
Paramètre | Description |
audit_categories | Liste des catégories d’événements, séparée par des virgules. |
audit_tables | Tables à auditer au format <keyspace>.<table>. |
audit_keyspaces | Espaces de clés à auditer entièrement. |
Catégories d’événements
- AUTH : Consigne les événements de connexion.
- DML : Suit la manipulation des données (INSERT, UPDATE, DELETE).
- DDL : Consigne les modifications de schéma (CREATE, ALTER, DROP).
- DCL : Consigne les modifications des autorisations.
- QUERY : Capture toutes les requêtes (surcharge de stockage élevée).
- ADMIN : Consigne les opérations administratives.
Affichage des journaux d’audit
Les journaux sont stockés en fonction de la méthode configurée :
Exemple de Syslog
Les journaux apparaissent dans le Syslog du système sous le nom du processus scylla-audit. Exemple de sortie :
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"
Exemple de table
Les journaux d’audit dans une table peuvent être interrogés en utilisant SQL :
SELECT * FROM audit.audit_log;
Sortie :
date | catégorie | nom_de_schéma | opération |
2024-12-01 12:00:00 | DDL | nba | DROP TABLE nba.team_roster; |
Audit de données natif avec SQL
ScyllaDB prend en charge l’audit via des fonctionnalités SQL telles que les vues et les procédures stockées. Explorons des exemples.
Utilisation des vues pour l’audit
Les vues peuvent suivre les modifications en créant une vue d’audit liée à une table :
CREATE MATERIALIZED VIEW audit_view AS SELECT * FROM mykeyspace.mytable WHERE timestamp > now() - interval '1 day';
Cette requête capture les modifications récentes à des fins de surveillance.
Utilisation des procédures stockées pour l’audit
Les procédures stockées peuvent enregistrer des événements dans une table d’audit personnalisée :
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;
Appelez la fonction pendant les opérations pour maintenir une piste d’audit.
Connexion à ScyllaDB
Pour se connecter et configurer les audits, utilisez votre client préféré, tel que cqlsh ou un langage de programmation comme Python :
from cassandra.cluster import Cluster cluster = Cluster(["127.0.0.1"]) session = cluster.connect("mykeyspace") session.execute("ALTER TABLE mytable ...")
Intégration de DataSunrise pour l’audit de ScyllaDB
DataSunrise améliore l’audit de ScyllaDB avec des fonctionnalités avancées, fournissant un contrôle centralisé et des analyses détaillées.
Configuration de DataSunrise pour l’audit de ScyllaDB
- Créer une instance : Lancez une nouvelle instance DataSunrise et connectez-vous à votre base de données ScyllaDB.
- Définir des filtres : Définissez des déclarations de filtres pour l’audit :
- Groupe d’objets : Surveillez des objets de base de données spécifiques.
- Groupe de requêtes : Filtrez les requêtes en fonction des types (DML, DDL).
- Types de requêtes : Détectez les tentatives d’injection SQL.
- Injection SQL:
- Événements de session : Capturez les activités des sessions utilisateur.
Affichage des données d’audit dans DataSunrise
Les résultats d’audit sont disponibles dans le tableau de bord DataSunrise. Exportez les journaux ou générez des rapports pour l’analyse.
Avantages de DataSunrise
- Contrôle centralisé : Règles uniformes pour plusieurs bases de données.
- Assurance de conformité : Simplifie la conformité aux exigences réglementaires.
- Sécurité renforcée : Détecte les comportements anormaux, y compris les injections SQL.
Conclusion
Mettre en œuvre une piste d’audit de données ScyllaDB est une étape cruciale vers une sécurité et une surveillance opérationnelle robustes des bases de données. Les fonctionnalités d’audit natif de ScyllaDB fournissent des mécanismes précis et configurables pour surveiller les actions des utilisateurs et les modifications de la base de données, garantissant la conformité et découvrant les vulnérabilités potentielles. En tirant parti des outils SQL comme les vues et les procédures stockées, les administrateurs peuvent créer des processus d’audit personnalisés et adaptables adaptés aux besoins de l’organisation.
L’intégration de DataSunrise élève cette capacité en offrant un audit et une sécurité centralisés. Les filtres avancés de la plateforme et le suivi des sessions garantissent une approche uniforme de la gouvernance des données dans plusieurs systèmes, améliorant la conformité et l’efficacité opérationnelle. De plus, les analyses et les rapports détaillés de DataSunrise simplifient l’identification des anomalies et des menaces.
Pour explorer comment DataSunrise peut simplifier et améliorer votre stratégie d’audit de base de données, visitez le site officiel et découvrez ses fonctionnalités complètes à travers une démonstration en ligne.