auditer SQL 2008

Embed Size (px)

Citation preview

  • 7/30/2019 auditer SQL 2008

    1/17

    Les audits avec SQL Server 2008

    parDavid BARBARIN

    Date de publication : 13 juin 2010

    http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    2/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 2 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    I - Introduction..............................................................................................................................................................3

    II - Quels avantages utiliser ce systme d'audit ?................................................................................................... 3

    III - Quels sont les inconvnients ?.............................................................................................................................3

    IV - Architecture du systme d'audit........................................................................................................................... 4

    IV-A - Objet d'audit SQL Server............................................................................................................................ 4

    IV-B - Cibles........................................................................................................................................................... 5

    IV-C - Objet de spcification d'audit serveur.........................................................................................................5IV-D - Object de spcification d'audit de bases de donnes.................................................................................5

    IV-E - Vues de gestion des audits.........................................................................................................................6

    IV-E-1 - Vues systmes....................................................................................................................................6

    IV-E-2 - DMV.....................................................................................................................................................6

    IV-E-3 - DMF.....................................................................................................................................................6

    V - Cas d'tude............................................................................................................................................................6

    V-A - Cration des instances d'objets d'audit SQL Server....................................................................................7

    V-B - Cration des objets de spcification d'audit serveur..................................................................................10

    V-C - Cration des objets de spcification d'audit de bases de donnes...........................................................10

    V-D - Visualisation des enregistrements d'audit.................................................................................................. 11

    V-D-1 - Audit de scurit des comptes de connexion....................................................................................11

    V-D-2 - Audit des changements d'tat du serveur SQL.................................................................................13V-D-3 - Audit des accs la table dbo.access..............................................................................................14

    V-E - Visualisation de la configuration des audits............................................................................................... 15

    VI - Conclusion.......................................................................................................................................................... 17

    VII - Webographie......................................................................................................................................................17

    VIII - Bibliographie..................................................................................................................................................... 17

    IX - Remerciements...................................................................................................................................................17

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    3/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 3 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    I - Introduction

    Dans des environnements complexes o il existe diffrents types d'acteurs qui interagissent tous de diffrentes

    manires avec la base de donnes, le besoin d'auditer certains vnements devient primordial pour une entreprise.

    Mais que doit auditer exactement un administrateur de bases de donnes ? La rponse n'est pas si vidente prioriet doit faire l'objet d'un vritable travail en amont car ceci dpend bien entendu des besoins et du contexte client.

    SQL Server 2008 propose une nouvelle fonctionnalit d'audit unifie qui permet de mettre en place facilement ces

    audits ce qui permet un administrateur de bases de donnes de se concentrer uniquement sur le vritable enjeu :

    trouver les audits qui seront en adquation avec les besoins de l'entreprise.

    II - Quels avantages utiliser ce systme d'audit ?

    Les audits ne sont pas une nouveaut sur SQL Server. Depuis la version 2000 il existe diffrents outils qui permettent

    d'auditer plus ou moins prcisment les vnements sur le serveur de bases de donnes. Cependant, jusqu' la

    version 2005 de SQL Server, il fallait utiliser plusieurs de ces outils pour pouvoir auditer diffrentes catgories

    d'vnements. Par exemple l'implmentation des triggers de type DML peuvent servir enregistrer des instructions

    DML dans des tables d'historisation. Des triggers de type DDL, quant eux, peuvent enregistrer n'importe quelle

    instruction DDL. Enfin le profiler, les notifications d'vnements ou les alertes de type WMI peuvent enregistrer

    d'autres vnements comme les changements de configuration de serveur ou les changements de droits sur les

    comptes de connexion ou les utilisateurs.

    Le nouveau systme d'audit propos avec SQL Server 2008 facilite le travail de l'administrateur de bases de donnes

    car il ne propose qu'un seul outil utiliser pour l'ensemble des catgories d'vnements auditer.

    Un autre aspect important de cette nouvelle fonctionnalit est la scurit qui n'est pas implment avec les autres

    outils proposs par SQL Server. En effet, les changements qui pourraient intervenir sur les audits eux mmes sont

    enregistrs, ce qui limite fortement les possibilits de contournements par une personne mal intentionne. Il va de

    soi que les fichiers d'audit ne soient accessibles que par un nombre restreint de personnes.

    Enfin, l'impact sur les performances du serveur est minimis avec ce nouveau systme pour plusieurs raisons :

    Il est possible d'crire de faon asynchrone les vnements dans les cibles d'audit

    En adoptant une stratgie de limitation au strict ncessaire des vnements surveiller on minimise l'impact

    sur les performances du serveur

    Le choix du type de cible est galement dterminant. Les performances sont amliores si l'on choisit les

    fichiers plats comme type de cible

    III - Quels sont les inconvnients ?

    Cependant si cette fonctionnalit possde beaucoup d'avantages il faut galement tenir compte de certains

    inconvnients :

    Elle n'est disponible qu' partir de la version Entreprise

    Elle ne peut tre implmente qu'au niveau d'une instance. On ne peut donc pas utiliser cette fonctionnalit

    de manire centralise sur une batterie de serveurs.

    Il n'existe pas d'outil de Reporting en natif.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    4/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 4 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    IV - Architecture du systme d'audit

    L'architecture de la nouvelle fonctionnalit d'audit utilise les vnements tendus de SQL Server 2008. Ces

    vnements tendus sont galement une nouveaut de cette version. Cette infrastructure permet de corrler des

    donnes d'vnements provenant de SQL Server mais aussi du systme d'exploitation, voire mme de certaines

    applications de bases de donnes. Nous ne rentrerons pas dans le dtail des vnements tendus. Ils feront l'objetd'un autre article.

    Revenons-en aux audits. Plusieurs types d'objets composent cette architecture. Chaque type d'objet a un rle bien

    spcifique et permet de grer les audits diffrents niveaux. En effet, il est possible d'auditer des vnements au

    niveau de l'instance SQL Server, au niveau d'une base de donnes ou encore au niveau d'un schma d'une base de

    donnes spcifique. Chaque audit peut tre enregistr dans plusieurs types de cibles qui peuvent tre des fichiers

    plats ou des journaux d'vnements.

    L'architecture gnrale peut donc tre reprsente de la manire suivante :

    Des objets de spcification d'audit de serveur ou de bases de donnes sont l'coute d'vnements ou groupes

    d'vnements en se basant sur l'infrastructure d'vnements tendus. Ceux-ci sont ensuite transmis aux instances

    d'objets d'audit serveur. Selon le paramtrage dfini, les vnements sont ensuite enregistrs de manire synchrone

    ou asynchrone dans leurs cibles respectives.

    IV-A - Objet d'audit SQL Server

    L'objet d'audit SQL Server dfinit la cible dans laquelle les vnements seront enregistrs. Chaque type de cible

    engendre une configuration des paramtres qui lui sont propres. Le mode d'criture dans une cible peut tre

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    5/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 5 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    synchrone ou asynchrone par exemple (proprit QUEUE_DELAY). Il est galement possible de contrler le

    comportement de l'instance SQL Server lorsque celui-ci ne peut plus crire dans la cible (proprit ON_FAILURE).

    Il existe deux scnarios typiques :

    L'instance SQL Server est arrte en cas d'chec d'criture dans une cible. Dans ce premier cas, il peut tre

    ncessaire de redmarrer le serveur en mode mono utilisateur (option -m) ou avec une configuration minimale (option

    -f), de dsactiver l'audit l'origine du problme et enfin permettre un redmarrage normal du serveur. Une analysedu problme pourra se faire postrieri par un administrateur de bases de donnes.

    Le serveur SQL n'est pas arrt en cas d'chec d'criture dans une cible. Dans ce deuxime cas la mmoire tampon

    ddie l'objet d'audit SQL Server commence se remplir. Par dfaut, chaque objet d'audit SQL Server se voit

    allouer 4MB d'espace mmoire). Que se passe t'il si cette mmoire tampon est pleine ? Tant qu'il est impossible

    d'crire dans la cible pour une raison quelconque, l'objet d'audit SQL Server bloquera tous les vnements qu'il est

    cens enregistrer. Si le problme n'est pas rsolu avant que le systme d'exploitation renvoie lui mme une erreur

    (erreur d'criture sur disque ou encore disque plein par exemple) l'objet d'audit SQL Server peut tre dsactiv et

    une erreur correspondante sera crite dan le journal d'erreurs de SQL Server. Une fois le problme rsolu, l'objet

    d'audit SQL Server devra tre redmarr.

    Chaque objet d'audit SQL Server ne peut collecter les donnes que d'un seul type d'objet de spcification d'audit.Les objets de spcification d'audit peuvent tre crs diffrents niveaux en fonction de l'vnement ou du groupe

    d'vnement que l'on dsire surveiller. Il peut exister plusieurs objets d'audit SQL Server pour une instance. Enfin

    chaque objet d'audit SQL Server possde un tat. Par dfaut celui-ci est dsactiv. Il faut l'activer pour pouvoir

    l'utiliser. Il faudra galement dsactiver un objet d'audit SQL Server si l'on veut modifier une de ses proprits.

    IV-B - Cibles

    Les cibles sont des containers dans lesquels sont enregistres les donnes relatives aux vnements audits. Il existe

    3 types de cibles dans l'architecture d'audit SQL Server 2008. Deux concernent directement le journal d'vnement

    Windows (APPLICATION_LOG ou SECURITY_LOG). Il est possible d'enregistrer les donnes d'vnement d'audit

    soit dans le journal des applications soit dans le journal de scurit. Pour ce dernier, certains paramtragessupplmentaires sont ncessaires au niveau du systme d'exploitation. Nous y reviendrons plus tard dans l'article.

    La 3me

    cible concerne les fichiers plats (FILE). Il est possible d'utiliser un ou plusieurs de ces fichiers en roulement

    (proprit MAX_ROLLOVER_FILES) pour ce type de cible l'instar des traces SQL Profiler ou Perfmon. Il est donc

    ncessaire de paramtrer le chemin du ou des fichiers (proprit FILEPATH), le nombre de fichiers qui pourront

    tre utiliss pour l'opration de roulement, et optionnellement de rserver directement l'espace total requis pour ces

    fichiers (proprit RESERVE_DISK_SPACE). Il est enfin ncessaire de crer le rpertoire qui recevra les fichiers

    d'audit (le moteur ne le cre pas, mais vrifie son existence).

    IV-C - Objet de spcification d'audit serveur

    L'objet de spcification d'audit serveur est cr au niveau de l'instance. Celui-ci permet de transmettre diffrentsvnements ou actions au niveau de l'instance par le biais des vnements tendus. Ces vnements sont

    rassembls en groupes d'vnements classs par type. Le groupe d'vnements est donc ici la granularit la plus fine

    qu'il est possible d'utiliser au niveau serveur. De la mme manire qu'un objet d'audit serveur, un objet de spcification

    d'audit serveur est cre avec un tat dsactiv. Il faudra donc l'activer pour pouvoir l'utiliser. Il faudra galement

    dsactiver un objet de spcification d'audit serveur pour pouvoir modifier une de ses proprits ou les vnements

    transmettre.

    IV-D - Object de spcification d'audit de bases de donnes

    Un objet de spcification d'audit de bases de donnes fonctionne de la mme manire qu'un objet de spcification

    d'audit de serveur quelques diffrences prs. Un objet de spcification d'audit de bases de donnes coute et

    transmet les vnements au niveau d'une base de donnes. De plus, le niveau de granularit des vnements n'estpas le mme. En effet, il est possible de rcuprer des groupes d'vnements ou un seul type vnement.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    6/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 6 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    IV-E - Vues de gestion des audits

    Bien entendu comme pour la plupart des autres fonctionnalits, SQL Server fournit des vues systmes, des DMV

    (Dynamic Management View) et DMF (Dynamic Management Function) pour les audits. En voici la liste :

    IV-E-1 - Vues systmes

    sys.server_audits : Chaque ligne de cette vue correspond une instance d'objet d'audit d'audit SQL Server.

    sys.server_audit_specifications : Chaque ligne de cette correspond une instance d'objet de spcification d'audit

    serveur.

    sys.server_audit_specification_details : Chaque ligne de cette vue correspond un groupe d'vnements audit

    pour chaque instance d'objet de spcification d'audit serveur. Il peut y avoir plusieurs lignes pour une instance d'objet

    de spcification d'audit serveur tant donn que celle-ci peut auditer plusieurs groupes d'vnements la fois.

    sys.database_audit_specifications : Chaque ligne de cette vue correspond une instance d'objet de spcificationd'audit de bases de donnes.

    sys.database_audit_specification_details : Chaque ligne de cette vue correspond un groupe d'vnements ou

    un vnement audit pour chaque instance d'objet de spcification d'audit de bases de donnes. De la mme manire

    que pour les instances d'objets de spcification d'audit serveur, il peut exister plusieurs lignes pour une instance

    d'objet de spcification d'audit de bases de donnes.

    IV-E-2 - DMV

    sys.dm_server_audit_statut : Cette vue permet de connatre l'tat de chaque instance d'objet d'audit SQL Server.

    sys.dm_audit_actions : Cette vue permet de lister les vnements ou groupes d'vnements pouvant tre

    enregistrs dans un fichier de log. Il est galement possible de connatre leur niveau de configuration (bases de

    donnes ou serveur) et quel groupe d'vnements ils appartiennent.

    sys.dm_audit_class_type_map : Cette vue retourne une table de correspondance entre les valeurs d'une colonne

    class_type d'un fichier d'audit et d'une colonne class_desc de la DMV sys.dm_audit_actions.

    sys.server_file_audits : Chaque ligne de cette vue correspond un fichier d'audit cr sur une instance SQL Server.

    On y retrouve notamment des informations de paramtrage comme le nom et le chemin du fichier, sa taille maximum,

    le type d'criture (synchrone ou asynchrone), sa date de cration etc .

    IV-E-3 - DMF

    fn_get_audit_file() : Cette fonction permet d'extraire les informations d'un fichier d'audit. Celle-ci permet galement

    de lire plusieurs fichiers en mme temps. Cette fonction ne peut tre utilise que pour les cibles de type fichier plat.

    V - Cas d'tude

    Ce cas d'tude rpond trois besoins que vous pouvez rencontrer en entreprise :

    Auditer et enregistrer tous les changements intervenant sur les comptes de connexion du serveur de bases

    de donnes.

    Auditer et enregistrer les changements d'tat du serveur de bases de donnes. Auditer l'accs certains objets d'une base de donnes pour connatre son utilisation relle.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    7/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 7 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    Nous utiliserons 3 types de cibles pour enregistrer les diffrents audits. La politique de scurit de l'entreprise impose

    que les audits relatifs aux changements intervenant sur les comptes de connexion se fassent de manire synchrone

    et dans le journal de scurit Windows. Si un problme quelconque ne permettait pas d'enregistrer ces changements

    alors le serveur de bases de donnes doit tre arrt. Les audits des changements d'tat ou de configuration du

    serveur de bases de donnes ainsi que tous les changements relatifs l'accs des objets d'une base de donnes

    nomme DB_AUDITse feront dans un fichier plat d'une taille de 100Mo maximum, ce qui permettra de garder un

    historique convenable en concordance avec les exigences de l'entreprise. Les critures dans le fichier se ferontde manire asynchrone avec un dlai maximum d'une seconde pour ne pas altrer de manire significative les

    performances du serveur.

    Nous utiliserons le langage TSQL pour crer nos objets d'audits. Il est cependant possible d'arriver au mme rsultat

    avec la console graphique de gestion des bases de donnes SQL Server Management Studio.

    CREATEDATABASE DB_AUDIT;GO

    USE DB_AUDIT;

    GO

    CREATETABLE dbo.access

    (

    id INTPRIMARYKEY,name_emp VARCHAR(50) NOTNULL

    );

    GO

    V-A - Cration des instances d'objets d'audit SQL Server

    Commenons donc par crer 3 instances d'objet d'audit SQL Server avec les 3 types de cibles exigs.

    USE masterGO

    -- Cible --> journal d'application Windows

    CREATE SERVER AUDIT application_log_modif_status_server

    TOFILE(

    FILEPATH ='E:\audit\',

    MAXSIZE =100 MB,

    RESERVE_DISK_SPACE =ON)

    WITH

    (

    QUEUE_DELAY =1000,

    ON_FAILURE = CONTINUE);

    -- Activitation de l'instance d'objet audit SQL ServerALTER SERVER AUDIT application_log_modif_status_server

    WITH ( STATE =ON );

    -- Cible --> journal de scurit WindowsCREATE SERVER AUDIT security_log_modif_security_login_user

    TO SECURITY_LOG

    WITH

    (QUEUE_DELAY =0,

    ON_FAILURE = SHUTDOWN

    );

    -- Activation de l'instance d'objet audit SQL ServerALTER SERVER AUDIT security_log_modif_security_login_user

    WITH ( STATE =ON );

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    8/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 8 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    -- Cible --> Fichier plat

    CREATE SERVER AUDIT file_modif_objects_database

    TOFILE

    (FILEPATH ='E:\audit\',

    MAXSIZE =100 MB,

    RESERVE_DISK_SPACE =ON

    )WITH

    (

    QUEUE_DELAY =1000,

    ON_FAILURE = CONTINUE

    );

    -- Activation de l'instance d'objet audit SQL Server

    ALTER SERVER AUDIT file_modif_objects_database

    WITH ( STATE =ON );

    Aprs avoir cr et activ les objets d'audit SQL Server pour les 3 cibles concernes, il faut ensuite effectuer un

    paramtrage supplmentaire pour que SQL Server soit autoris crire dans le journal de scurit Windows. Pour

    cela nous utiliserons la console de gestion des stratgies locales du serveur mais il est galement possible d'utiliser

    les utilitaires en ligne de commande auditpolou secpol. On accde la console de gestion des stratgies locales duserveur partir du Panneau de configuration qui est rfrence dans le menu Outils d'administration

    La premire tape consiste autoriser le compte de service SQL Server gnrer des audits de scurit. Pour cela

    avec la console de gestion des stratgies locales, il faut se rendre sous le n?ud Attribut de des droits utilisateurs

    et choisir le paramtre Gnrer des audits de scurit

    Il faut ajouter le compte de service du serveur SQL. Dans notre cas nous ajouterons le compte LOCAL SYSTEM.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    9/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 9 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    Dans un deuxime temps il faut galement activer les audits d'accs sur les objets. Ceci ce fait aussi par la console

    de gestion des stratgies locales sous le n?ud Stratgie d'audit et le paramtre Auditer l'accs aux objets .

    Il faut activer les audits pour les 2 types d'accs : Russite et Echec

    Bien entendu il faudra ventuellement veiller ce qu'aucune stratgie descendue par GPO ne vienne modifier le

    comportement des paramtres configurs dans les stratgies locales. Attention bien veiller paramtrer ces accssurtout dans le cas o vous avez dcid de stopper le serveur SQL en cas d'chec d'criture dans le journal de

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    10/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 10 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    scurit Windows. En effet lorsque vous activerez cet audit et si les accs ne sont pas corrects, l'audit stoppera

    automatiquement le serveur !!!

    V-B - Cration des objets de spcification d'audit serveur

    Il faut maintenant crer deux objets de spcification d'audit au niveau de l'instance SQL Server. Un objet despcification d'audit sera l'coute des vnements ou actions concernant les changements sur les comptes de

    connexion. Un deuxime objet de spcification d'audit sera, quant lui, destin aux changements d'tat intervenant

    sur le serveur.

    USE[master];GO

    -- Audit changement statut serveur

    CREATE SERVER AUDIT SPECIFICATION audit_change_status_serverFOR SERVER AUDIT file_modif_objects_database

    ADD (SERVER_STATE_CHANGE_GROUP),

    ADD (SERVER_OPERATION_GROUP)

    WITH ( STATE =ON );GO

    -- Audit modification scurit des comptes de connexion

    CREATE SERVER AUDIT SPECIFICATION audit_modif_users_logins

    FOR SERVER AUDIT security_log_modif_security_login_userADD (FAILED_LOGIN_GROUP), -- Connexion choue

    ADD (LOGIN_CHANGE_PASSWORD_GROUP), -- Changement de mot passe

    ADD (SERVER_ROLE_MEMBER_CHANGE_GROUP), -- Changement rle serveur

    ADD (DATABASE_ROLE_MEMBER_CHANGE_GROUP) -- Changement rle base de donnesWITH ( STATE =ON );

    Nous allons ajouter l'objet de spcification d'audit serveur nomm audit_modif_users_login le groupe

    d'vnement SERVER_PRINCIPAL_CHANGE_GROUP qui permet de surveiller, entre autres, les vnements de

    cration, de suppression et de modification de compte de connexion. Pour rappel, il faudra, au pralable, le dsactiverpour pouvoir le modifier.

    ALTER SERVER AUDIT SPECIFICATION audit_modif_users_logins

    WITH ( STATE =OFF );

    -- Ajout d'un vnement pour l'instance d'objet de spcification d'audit serveur-- audit_modif_users_logins

    ALTER SERVER AUDIT SPECIFICATION audit_modif_users_logins

    ADD (SERVER_PRINCIPAL_CHANGE_GROUP); -- Evnement CREATE, DROP , ALTER;

    ALTER SERVER AUDIT SPECIFICATION audit_modif_users_logins

    WITH ( STATE =ON );

    V-C - Cration des objets de spcification d'audit de bases de donnes

    Aprs avoir cr les objets de spcification d'audit serveur, il nous faut crer maintenant un autre objet de spcification

    d'audit de bases de donnes pour surveiller les vnements SELECT, INSERT, UPDATE, DELETE et RERENCES

    en provenance de l'utilisateurdbo pour la table dbo.access .

    USE DB_AUDIT

    GO

    -- Audit d'accs pour la table dbo.access de la base de donnes

    -- DB_AUDIT

    CREATEDATABASEAUDIT SPECIFICATION file_modif_objects_databaseFOR SERVER AUDIT file_modif_objects_database

    ADD (SELECT, INSERT, UPDATE, DELETE, REFERENCES ON dbo.accessBYpublic)

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    11/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 11 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    WITH (STATE =ON)GO

    V-D - Visualisation des enregistrements d'audit

    Les outils de visualisation d'vnements diffrent selon le type de cible utilis. On peut par exemple utiliser

    directement le journal des vnements pour un type de cible se basant sur le journal de scurit ou d'application.

    SQL Server met galement disposition une DMFqui permet de lire les donnes d'audit dans un fichier plat.

    V-D-1 - Audit de scurit des comptes de connexion

    Commenons par simuler des actions pouvant tre effectues sur des objets de type comptes de connexion :

    -- Cration compte de connexion test1

    CREATE LOGIN test1

    WITH PASSWORD ='test1';

    -- Cration compte de connexion test2CREATE LOGIN test2

    WITH PASSWORD ='test2';

    -- Modification mot de passe compte de connexion test1ALTER LOGIN test1

    WITH PASSWORD ='%test1%';

    -- Modification mot de passe compte de connexion test2ALTER LOGIN test2

    WITH PASSWORD ='%test2%';

    -- Ajout du compte de connexion test1 au rle fixe de serveur sysadminEXEC sp_addsrvrolemember 'test1', 'sysadmin';

    -- Ajout du compte de connexion test2 au rle fixe de serveur sysadminEXEC sp_addsrvrolemember 'test2', 'bulkadmin';

    -- Suppression du compte de connexion test1

    DROP LOGIN test1;

    -- Suppression du compte de connexion test2DROP LOGIN test2;

    Il suffit maintenant de regarder dans le journal de scurit de Windows. L'ID de l'vnement gnr par les audits

    SQL Server 2008 dans le journal de scurit est gale 33205. Voici un exemple de ce que l'on trouve dans le journal

    aprs avoir excut les scripts TSQL ci-dessus :

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    12/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 12 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    Le dtail d'une ligne du journal concernant la cration d'un des comptes de connexion :

    Le dtail d'une ligne du journal concernant le changement de mot de passe d'un des comptes de connexion :

    Le dtail d'une ligne du journal concernant l'affectation d'un des comptes de connexion au rle de serveur fixe

    sysadmin :

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    13/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 13 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    Le dtail d'une ligne du journal concernant la suppression d'un des comptes de connexion :

    V-D-2 - Audit des changements d'tat du serveur SQL

    Initions maintenant un changement dans les options de configuration du serveur. Nous autorisons la procdure

    xp_cmdshell.

    EXEC sp_configure 'show advanced options', 1;GO

    RECONFIGURE;

    GO

    EXEC sp_configure 'xp_cmdshell' , 1;GO

    RECONFIGURE;

    ... et nous redmarrerons galement notre serveur de bases de donnes :

    net stop mssqlserver /y && net start mssqlserver && net start sqlserveragent

    Pour pouvoir visualiser les enregistrements d'audits dans un fichierplat nous utiliserons la DMF fn_get_audit_file,

    les vues systmes sys.dm_audit_actions et sys.dm_audit_class_type de la manire suivante :

    SELECT

    f.session_id,a.nameAS action_name,

    m.class_type_desc,

    a.covering_action_name,f.statement,

    f.server_principal_name

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    14/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 14 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    FROM fn_get_audit_file('E:\audit\application_log_modif_status_server*' , DEFAULT, DEFAULT)AS fINNERJOIN sys.dm_audit_class_type_map AS m

    ON m.class_type = f.class_type

    INNERJOIN sys.dm_audit_actions AS a

    ON a.action_id = f.action_idORDERBY event_time DESC

    Le rsultat est le suivant :

    On peut voir les lignes d'audit en relation avec les actions de type ALTER SETTINGS et SERVER_STARTED .

    V-D-3 - Audit des accs la table dbo.access

    -- opration SELECT

    SELECT*FROM dbo.access

    -- opration INSERT

    INSERT dbo.accessVALUES (1, 'emp1');INSERT dbo.accessVALUES (2, 'emp2');

    -- opration UPDATE

    UPDATE dbo.accessSET name_emp ='emp1'

    WHERE id =1;

    -- opration DELETE

    DELETEFROM dbo.accessWHERE id =2;

    GO

    Le rsultat est le suivant :

    Chaque ligne d'audit correspond un vnement. On peut remarquer pour les instructions UPDATE et DELETE

    il existe 2 lignes d'audit. Quelle en est la raison ? Dans notre cas, la requte effectue des mises jour ou des

    suppressions en utilisant un prdicat (clause WHERE). Cette action est possible la condition de possder le droit

    SELECT sur l'objet concern (ici la table dbo.access). C'est la raison pour laquelle nous aurons, chaque fois qu'une

    instruction UPDATE ou DELETE est effectue en utilisation une clause WHERE, deux lignes correspondant aux

    actions SELECT et UPDATE ou DELETE.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    15/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 15 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    V-E - Visualisation de la configuration des audits

    Un certain nombre de DMVexiste pour visualiser la configuration des diffrents composants de l'architecture d'audit

    SQL Server 2008. Voici quelques exemples d'utilisation de ces vues de gestion :

    Visualisation des diffrentes instances d'objets d'audits SQL Server, de leurs instances d'objets despcification d'audit respectives, les vnements ou groupes d'vnements audits et les paramtres de

    fichier pour les types de cibles fichier plat :

    SELECTsa.nameAS audit_name,

    sa.is_state_enabled,

    sa.on_failure_desc,

    sa.queue_delay,

    sa.type_desc,sas.nameAS srv_spe_name,

    sas.is_state_enabled,

    (SELECT audit_action_name +', '

    FROM sys.server_audit_specification_details AS sasd WHERE sasd.server_specification_id = sas.server_specification_id

    FOR XML PATH('')) AS list_actions,

    fa.log_file_path,

    fa.log_file_name,fa.max_file_size,

    fa.max_rollover_files

    FROM sys.server_audit_specifications AS sas

    INNERJOIN sys.server_audits AS saON sa.audit_guid = sas.audit_guid

    LEFTJOIN sys.server_file_audits AS fa

    ON fa.audit_guid = sa.audit_guid

    Visualisation de la configuration des diffrentes instances d'objets d'audit de spcification de bases de

    donnes

    SELECT

    DISTINCTsa.name,

    sa.is_state_enabled,

    class_desc,

    (SELECT sasd.audit_action_name +', '

    FROM sys.database_audit_specification_details AS sasd WHERE sasd.database_specification_id = sa.database_specification_id

    FOR XML PATH('')) AS list_actions

    FROM sys.database_audit_specification_details AS sas

    INNERJOIN sys.database_audit_specifications AS saON sas.database_specification_id = sa.database_specification_id

    Visualisation du statut des diffrentes cibles d'audits :

    SELECT

    nameAS audit_name,status_desc,

    status_time,

    audit_file_path,

    audit_file_size /1024AS size_in_Ko

    FROM sys.dm_server_audit_status;

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    16/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 16 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance. Par contre, la page de prsentationconstitue une uvre intellectuelle protge par les droits d'auteur. Copyright 2010 David BARBARIN. Aucune reproduction, mme partielle, nepeut tre faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vousencourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts. Cette page est dpose la SACD.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/

    Visualisation de la configuration des instances d'audits SQL Server concernes par le type de cible fichier :

    SELECT

    name,

    on_failure,

    max_file_size,max_rollover_files,

    log_file_path,

    log_file_name

    FROM sys.server_file_audits

    Visualisation du dtail de la configuration d'une spcification d'audit pour une base de donnes :

    USE DB_AUDIT;

    GO

    SELECT

    database_specification_id,audit_action_name,

    class_desc,

    audited_result,

    is_groupFROM sys.database_audit_specification_details AS das

    WHERE das.database_specification_id = (SELECT database_specification_id

    FROM sys.database_audit_specifications

    WHEREname='file_modif_objects_database')ORDERBY class_desc;

    Visualisation des informations d'audits et de leurs sessions d'vnements tendues respectives : Remarquez

    que pour l'objet d'audit "security_log_modif_security_login_user" aucun buffer n'est allou. Ceci est normal

    puisque nous avons demand une criture synchrone pour cet audit.

    SELECT

    a.name,

    x.nameAS session_name,t.target_name,

    x.total_buffer_size

    FROM sys.dm_server_audit_status AS aINNERJOIN sys.dm_xe_sessions AS xON a.event_session_address = x.address

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/
  • 7/30/2019 auditer SQL 2008

    17/17

    Les audits avec SQL Server 2008 parDavid BARBARIN

    - 17 -Les sources prsentes sur cette page sont libres de droits et vous pouvez les utiliser votre convenance Par contre la page de prsentation

    INNERJOIN sys.dm_xe_session_events AS eON x.address = e.event_session_address

    INNERJOIN sys.dm_xe_session_targets AS t

    ON t.event_session_address = e.event_session_address

    VI - Conclusion

    SQL Server 2008 possde un outil d'audit extrmement puissant. Cette nouvelle fonctionnalit permet de rpondre

    parfaitement aux aspects scurit, performance et gestion. Dommage que cette fonctionnalit ne soit disponible qu'en

    version entreprise ... Cependant si votre entreprise possde dj un outil d'audit des bases de donnes SQL Server,

    cela vaut la peine de tester cette nouvelle fonctionnalit et d'tablir un benchmarking des fonctionnalits !!

    VII - Webographie

    Documentation msdn

    VIII - Bibliographie

    70-432 : Microsoft SQL Server 2008--Implementation and Maintenance : Training Kit

    IX - Remerciements

    Je remercie tout particulirement Elsuket pour avoir contribu l'laboration de cet article.

    http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://mikedavem.developpez.com/tutoriels/sqlserver/2008/audits-avec-sql-server-2008/http://www.developpez.net/forums/u52290/elsuket/http://msdn.microsoft.com/en-us/library/cc280386.aspxhttp://blog.developpez.com/mikedavem/http://mikedavem.developpez.com/http://www.developpez.net/forums/u70376/mikedavem/http://www.developpez.com/