Audit de Base de Données pour Percona Server
Introduction
Dans cet article, nous allons explorer l’audit de base de données pour Percona Server (MySQL), en nous concentrant sur l’audit des données et des requêtes, et comment des outils comme DataSunrise peuvent améliorer votre stratégie globale de sécurité des bases de données.
Saviez-vous que les récents rapports de cybersécurité révèlent que les acteurs malveillants préfèrent les méthodes de vol de données efficaces telles que la compromission d’email d’affaires (BEC) ? Cette tendance met en évidence la mauvaise gestion des données comme une cible de choix. De telles informations alarmantes soulignent l’importance cruciale d’un audit de base de données robuste.
Capacités d’Audit de Percona MySQL
Plugin d’Audit Natif
Percona Server for MySQL est livré avec un plugin d’audit intégré qui offre des capacités d’audit de base. Ce plugin vous permet de suivre divers événements de la base de données et les activités des utilisateurs.
Pour activer le plugin d’audit, vous pouvez utiliser la commande suivante :
INSTALL PLUGIN audit_log SONAME 'audit_log.so'; Check if the plugin is active: SELECT * FROM information_schema.PLUGINS WHERE PLUGIN_NAME LIKE '%audit%';
Une fois activé, vous pouvez configurer le plugin en utilisant des variables système. Par exemple :
SET GLOBAL audit_log_file = '/var/log/mysql/audit.log'; SET GLOBAL audit_log_policy = 'ALL';
La première (audit_log_file) est en lecture seule si vous configurez Percona Server avec l’image Docker. Ces paramètres définissent l’emplacement du fichier journal et la politique d’audit.
Vous pouvez les consulter comme suit :
SHOW GLOBAL VARIABLES LIKE 'audit_log_file'; SHOW GLOBAL VARIABLES LIKE 'audit_log_policy'; SHOW GLOBAL VARIABLES LIKE 'general_log'; SHOW GLOBAL VARIABLES LIKE 'general_log_file';
Journalisation des Requêtes
Percona Server prend également en charge la journalisation des requêtes, ce qui peut être utile pour surveiller et résoudre les problèmes de performance de la base de données.
Pour activer la journalisation des requêtes :
SET GLOBAL general_log = 'ON';
Cela enregistrera toutes les requêtes exécutées dans le fichier spécifié.
Audit de Données Natif dans Percona Server
Les fonctionnalités d’audit de Percona Server ne sont pas aussi avancées que celles d’autres outils. Cependant, elles offrent tout de même des informations précieuses sur les actions des utilisateurs et la surveillance des activités de la base de données.
Suivi des Connexions des Utilisateurs
Pour suivre les connexions des utilisateurs, vous pouvez utiliser la requête SQL suivante :
SELECT user, host, db, command, time FROM information_schema.processlist WHERE command = 'Connect';
Cette requête montre les connexions actives à la base de données. L’état ‘Connect’ est très éphémère. Il n’apparaît que brièvement lors de l’établissement d’une connexion. Essayez cette commande pour voir tous les états :
SELECT user, host, db, command, time
FROM information_schema.processlist;
La plupart des connexions actives seront dans d’autres états comme ‘Sleep’, ‘Query’, ou ‘Idle’.
Surveillance des Accès aux Tables
Pour surveiller les accès aux tables, vous pouvez utiliser des triggers :
CREATE TABLE audit_log ( id INT AUTO_INCREMENT PRIMARY KEY, action VARCHAR(50) NOT NULL, table_name VARCHAR(50) NOT NULL, user VARCHAR(100) NOT NULL, timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
CREATE TRIGGER audit_MOCK_DATA AFTER INSERT ON MOCK_DATA FOR EACH ROW INSERT INTO audit_log (action, table_name, user) VALUES ('INSERT', 'MOCK_DATA', CURRENT_USER()); INSERT INTO MOCK_DATA (id, first_name, last_name, email) VALUES (21, 'L1', 'R1', '[email protected]'); SELECT * from MOCK_DATA md; SELECT * FROM audit_log;
Ce code crée une table pour que le trigger puisse l’utiliser. Il crée ensuite un trigger nommé ‘audit_MOCK_DATA’ qui insère des données dans la table audit_log. Ce trigger journalise les opérations INSERT sur la table spécifiée.
Amélioration des Capacités d’Audit avec DataSunrise
Bien que les outils natifs fournissent des capacités d’audit de base, de nombreuses organisations nécessitent des solutions plus complètes. C’est là que des outils spécialisés comme DataSunrise entrent en jeu.
Création d’une Instance DataSunrise
Pour configurer DataSunrise pour l’audit de Percona MySQL :
- Téléchargez et installez DataSunrise sur votre serveur.
- Lancez la console DataSunrise et accédez à la section “Instances”.
- Cliquez sur “Ajouter une nouvelle instance” et sélectionnez “Percona MySQL” comme type de base de données.
- Entrez les détails de connexion de votre Percona Server et enregistrez la configuration.
Sur la figure ci-dessous, localisez l’Instance Percona MySQL en bas de la liste.
Descriptions Détaillées des Événements pour l’Audit de Données
DataSunrise offre un contrôle granulaire des événements d’audit. Pour accéder aux descriptions détaillées des événements :
- Allez à la section “Audit” dans la console DataSunrise.
- Créez une nouvelle règle d’audit en cliquant sur “+ Ajouter une règle”.
- Sélectionnez votre instance Percona MySQL.
- Sélectionnez les événements et les objets de base de données que vous souhaitez surveiller et configurez les paramètres supplémentaires. Enregistrez la règle.
La configuration de la règle est vraiment simple et directe.
DataSunrise vous permet de suivre un large éventail d’événements, y compris :
- Les opérations SELECT, INSERT, UPDATE, et DELETE
- Les exécutions de procédures stockées
- Les tentatives d’authentification des utilisateurs
- Les changements de schéma
- Les modifications de privilèges
La figure ci-dessous illustre les Traînées Transactionnelles. Chaque événement est interactif, fournissant des informations précieuses sur les règles et les bases de données à travers vos actifs de données. Cliquez sur n’importe quelle traînée pour explorer des informations détaillées sur l’ensemble de votre écosystème de données.
Avantages d’un Audit de Base de Données Avancé
La mise en place d’une solution d’audit de base de données robuste offre de nombreux avantages :
- Amélioration de la sécurité : En surveillant le comportement des utilisateurs et les activités de la base de données, vous pouvez rapidement détecter et répondre aux menaces potentielles de sécurité.
- Conformité : De nombreuses industries exigent des traces d’audit détaillées. L’audit avancé aide à répondre aux exigences réglementaires comme le RGPD, HIPAA, et PCI DSS.
- Optimisation des performances : L’analyse des schémas de requêtes peut aider à identifier les goulots d’étranglement et optimiser les performances de la base de données.
- Analyse médico-légale : En cas d’incident de sécurité, les journaux d’audit détaillés fournissent des informations précieuses pour l’enquête et la récupération.
Meilleures Pratiques pour l’Audit des Bases de Données
Pour maximiser l’efficacité de votre stratégie d’audit de base de données :
- Définissez des politiques d’audit claires alignées avec les objectifs de sécurité de votre organisation.
- Examinez et analysez régulièrement les journaux d’audit pour détecter les activités suspectes.
- Mettez en place des alertes en temps réel pour les événements critiques.
- Assurez-vous de mettre en place des contrôles d’accès appropriés pour les journaux d’audit eux-mêmes.
- Testez périodiquement vos mécanismes d’audit pour vous assurer qu’ils capturent toutes les données pertinentes.
Conclusion
L’audit des bases de données est un élément critique d’une stratégie de sécurité complète pour les environnements Percona Server. Bien que les outils natifs offrent des capacités de base, des solutions spécialisées comme DataSunrise fournissent des options d’audit plus robustes et flexibles.
En mettant en place un audit de base de données rigoureux, vous pouvez améliorer la sécurité, garantir la conformité et obtenir des éclairages précieux sur les opérations de votre base de données. Rappelez-vous, un audit efficace ne consiste pas seulement à collecter des données – il s’agit d’utiliser ces données pour prendre des décisions éclairées et protéger vos précieux actifs d’information.
DataSunrise offre des outils conviviaux et flexibles pour la sécurité des bases de données, y compris des capacités d’audit complètes, le masquage des données et les fonctionnalités de découverte des données. Pour explorer comment DataSunrise peut améliorer la sécurité de votre Percona Server, visitez notre site web pour une démonstration en ligne et découvrez la puissance de la protection avancée des bases de données.