Bonjour,
Sous Oracle 11g, je dois auditer les insert et update sur une table en production.
L'audit semble ne pas être activé.
Je dois donc faire ceci pour tracer l'audit en db avec sql bind et text:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SQL> SHOW PARAMETER audit; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ audit_file_dest string /u01/app/oracle/admin/MySID/adump audit_sys_operations boolean FALSE audit_syslog_level string audit_trail string NONE
Je ne sais si ceci est également nécessaire pour activer l'audit d'un point de vue générale ou si c'est juste pour auditer les actions des users avec le privilège SYSDBA ou SYSOPER:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQL> ALTER SYSTEM SET AUDIT_TRAIL=db,extended SCOPE=SPFILE;
Si c'est juste pour auditer les actions des users avec le privilège SYSDBA ou SYSOPER et que ce n'est pas gourmand, autant l'activer par défaut, ça peut toujours être intéressant ? (J'imagine)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQL> ALTER SYSTEM SET AUDIT_SYS_OPERATIONS=true SCOPE=SPFILE;
Il faut ensuite redémarrer la DB pour prendre en compte ces changements et activer l'audit. (Je n'ai pas trouvé qu'on pouvait l'activer à chaud)
A partir de là, est ce que j'ai une perte de performance ?
Si par exemple, je laisse AUDIT_SYS_OPERATIONS=false mais que je set AUDIT_TRAIL=db,extended, l'audit est actif mais rien n'est audité tant que je n'ai rien spécifié donc pas de perte de performance ? (c'est surtout ce point qui m'intéresse)
Ensuite, je dois préciser la table à auditer:
SQL> AUDIT insert, update, delete ON maTable;
Et j'imagine qu'à partir de là, la DB carbure en chargeant les tables AUD$ ?
Est ce que le BY ACCESS ou BY SESSION est nécessaire ?
Merci d'avance pour toutes vos réponses et remarques.
Partager