Historique d’activité de la base de données ScyllaDB

L’audit de base de données est une pierre angulaire de la gestion moderne des données, offrant des aperçus sur les activités des utilisateurs et les modifications apportées aux données pour renforcer la sécurité et la conformité. ScyllaDB, une base de données NoSQL haute performance, offre des fonctionnalités d’audit robustes pour surveiller l’activité de la base de données. Cet article explore les capacités d’audit natif de ScyllaDB, incluant des exemples de configuration et d’utilisation. Nous explorons également les fonctionnalités étendues de l’historique d’activité de la base de données fournies par DataSunrise, un outil de sécurité de base de données complet.
Historique d’activité natif de la base de données ScyllaDB
Les outils d’audit natifs de ScyllaDB permettent aux administrateurs de surveiller les requêtes, les modifications de données et d’autres activités de la base de données. Ces fonctionnalités, disponibles uniquement dans Scylla Enterprise, supportent l’audit via Syslog ou des tables dédiées à Scylla.
Configuration de l’audit dans ScyllaDB
L’audit dans ScyllaDB est activé et configuré via le fichier scylla.yaml. Les étapes suivantes décrivent le processus :
- Activer l’audit
Ouvrez le fichier scylla.yaml et définissez le paramètre audit sur table ou syslog. Par exemple :
audit: "table" audit_categories: "DCL,DDL,AUTH" audit_keyspaces: "mykeyspace"
Redémarrez le serveur Scylla :
sudo systemctl restart scylla-server
- Catégories d’audit
ScyllaDB prend en charge les catégories d’audit suivantes :
- AUTH : enregistre les événements de connexion.
- DML : enregistre les opérations de manipulation de données (par ex., INSERT, UPDATE).
- DDL : enregistre les événements modifiant le schéma (par ex., CREATE, DROP).
- DCL : enregistre les modifications des permissions (par ex., GRANT, REVOKE).
- QUERY : enregistre toutes les requêtes.
- ADMIN : enregistre les opérations administratives.
Audit des keyspaces et des tables
audit_tables: "mykeyspace.mytable"
- Laissez audit_tables vide pour auditer toutes les tables dans les keyspaces spécifiés.
Visualisation des journaux d’audit
ScyllaDB stocke les journaux d’audit soit dans une table, soit dans Syslog. Voici des exemples d’accès à ces journaux :
Journaux d’audit basés sur des tables
Les journaux d’audit stockés dans la table audit.audit_log peuvent être consultés avec SQL :
SELECT * FROM audit.audit_log;
Exemple de sortie :
date | nœud | catégorie | nom du keyspace | opération | nom d’utilisateur |
|---|---|---|---|---|---|
2024-01-01 12:00:00+00 | 192.168.1.10 | DDL | mykeyspace | CREATE TABLE mytable … | admin |
Journaux d’audit basés sur Syslog
Les journaux de Syslog peuvent être redirigés vers un fichier en configurant rsyslog sur CentOS :
sudo dnf install rsyslog sudo echo "if $programname contains 'scylla-audit' then /var/log/scylla-audit.log" >> /etc/rsyslog.conf sudo systemctl start rsyslog sudo systemctl enable rsyslog
Les messages d’audit apparaîtront dans /var/log/scylla-audit.log.
Exemple : Suivi des suppressions de tables
Activez l’audit pour les opérations DDL dans le fichier scylla.yaml :
audit: "table" audit_categories: "DDL" audit_keyspaces: "mykeyspace"
Redémarrez Scylla et effectuez une opération de suppression de table :
DROP TABLE mykeyspace.mytable;
Interrogez la table audit.audit_log pour visualiser l’événement :
SELECT * FROM audit.audit_log WHERE operation LIKE 'DROP TABLE%';
Audit renforcé avec DataSunrise
DataSunrise étend les capacités d’audit de ScyllaDB en offrant une gestion centralisée, un audit dynamique et des rapports avancés. Ci-dessous, nous expliquons comment configurer DataSunrise pour l’audit de ScyllaDB.
Configuration de DataSunrise pour ScyllaDB
- Créer une instance DataSunrise
- Connectez-vous au panneau de gestion DataSunrise.
- Ajoutez une nouvelle instance et configurez le proxy pour vous connecter à votre cluster ScyllaDB.
- Utilisez le mode proxy dynamique pour un audit en temps réel ou le mode statique pour des instantanés périodiques.

- Configurer les règles d’audit
- Définissez les règles d’audit pour ScyllaDB dans l’interface DataSunrise. Par exemple :
- Surveillez des commandes SQL spécifiques.
- Suivez l’accès aux données sensibles.

- Afficher les résultats d’audit
- Accédez à la section “Journaux d’audit” dans DataSunrise pour afficher des journaux d’activité complets.
- Filtrez les journaux par utilisateur, type d’événement ou plage horaire pour une analyse détaillée.
Avantages de l’utilisation de DataSunrise
- Gestion centralisée : Gérez les règles d’audit pour plusieurs bases de données depuis une console unique.
- Audit dynamique : Surveillez l’activité de la base de données en temps réel sans impacter les performances.
- Rapports avancés : Générez des rapports de conformité détaillés.
- Intégration de la sécurité : Mettez en œuvre le masquage de données, le contrôle d’accès et la détection de menaces parallèlement à l’audit.
Exemple : Audit de l’accès aux données
Pour auditer les requêtes SELECT sur des tables sensibles :
Définissez une règle dans DataSunrise pour suivre les instructions SELECT.
Accédez à la table via SQL :
SELECT * FROM sensitive_table;
Consultez le journal d’audit dans DataSunrise :
Heure : 2024-01-01 12:00:00
Utilisateur : admin
Requête : SELECT * FROM sensitive_table;
Conclusion
Les fonctionnalités d’audit natives de ScyllaDB et les capacités étendues de DataSunrise offrent des outils puissants pour surveiller l’activité de la base de données et garantir la conformité. Alors que ScyllaDB propose des options d’audit détaillées via des configurations basées sur SQL, DataSunrise améliore ces capacités grâce à une gestion centralisée et une analyse avancée.
En plus de ses capacités d’audit robustes, DataSunrise offre des fonctionnalités de sécurité complètes, incluant des règles de sécurité, le masquage de données, la détection de données sensibles, des évaluations de vulnérabilité, et bien plus encore. Pour en savoir plus sur la suite de sécurité de base de données de DataSunrise, y compris ses fonctionnalités d’audit et de conformité, visitez notre site web pour une démonstration en ligne.
