Auditer les données en MySQL

le 15/07/2008 à 21:42
Auditer les données en MySQL
Un client m'a demandé récemment de l'aide pour enregistrer l'historique de modification de certaines tables. Comme pour de nombreux problèmes, la solution n'est pas unique, et dans ce cas, il y a même plusieurs solutions. J'ai été capable de fournir une solution totalement en base de données, avec un impact minimal sur le schéma.

Voici mon approche : votre avis et solutions alternatives sont toujours les bienvenues.

L'audit de données en base consiste à avoir un journal de toutes les modifications et lectures des données. Les audits sont de plus en plus courants dans les bases, où le système de droits n'est pas suffisant pour garantir la pérennité des informations : il faut parfois aussi fournir à un organisme certificateur des listes d'utilisations et d'utilisateurs.

- Auditing your MySQL Data
- Auditing your MySQL Data (part 2)
- Putting the MySQL information_schema to Use

A lire également

Giuseppe Maxia vient de mettre la main sur un moteur de révision, qui est en fait une table qui note les modifications dans les données d'une table. Elle fonctionne comme un svn, et note les opérations qui se déroule sur les données : elle note un numéro de version pour la ligne (identifiée par une clé primaire), et un type d'opération (effacé, modifié) ainsi que la date et la valeur initiale. On a donc une table qui contient l'historique de l'autre.

C'est un premier pas pour faire des suivis de modifications dans les bases de données. C'est très demandé en sécurité, pour savoir qui a fait quoi dans la base, mais cela pourra aussi servir en production, pour comparer deux tables entre le développement et la production : or, la fusion de tables fait encore partie des défis à relever.

Ce message sort juste le lendemain de celui de Ewen, qui traite justement des triggers pour auditer les tables MySQL.

- A cool idea - Revision engine
- Why audit logging with triggers in MySQL is bad for replication

Commentaires

Ecrire

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours