Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/02/2012, 00h11   #1
Membre à l'essai
 
Inscription : mai 2002
Messages : 103
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 103
Points : 20
Points : 20
Par défaut Auditer les drops

Bonjour tout le monde,

Apres de nombreux essais sur ma base et de longues recherches sur le net j'ai realise que l'operation
Code :
1
2
 
AUDIT DROP TABLE BY ....
N'existe pas,
en revanche une solution de rechange est proposee, en l'occurrence :
Code :
1
2
 
AUDIT TABLE BY ....
qui inclut aussi les operations de CREATE et TRUNCATE

J'ai essaye alore la syntaxe :
Code :
1
2
 
AUDIT TABLE BY SCOTT BY ACCESS;
L'operation est executee avec succes mais, rien n'est produit sur DBA_AUDIT_TRAIL,
j'ai effectue plusieurs DROP dans une session SCOTT sans que je ne vois rien venir sur DBA_AUDIT_TRAIL;

quelqu'un peut il me dire ou est ce que je peux recuperer la trace de mes DROPs ?

Merci par avance.

ORACLE 10 / WINDOWS 7
Isabella est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 09h22   #2
Membre éclairé
 
Inscription : novembre 2002
Messages : 533
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 533
Points : 359
Points : 359
Bonjour

je te conseille d'implémenter une solution 'maison' sur la base de trigger event on DATABASE

ex : toute objet droppé par un user <> SYS sera tracée dans une table créée à cet effet

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
CREATE OR REPLACE TRIGGER SYS.trg_trace_drop
   BEFORE DROP ON DATABASE
DECLARE
   l_event    VARCHAR2 (4000) := ora_sysevent;
   l_login    VARCHAR2 (30)   := ora_login_user;
   l_type     VARCHAR2 (30)   := ora_dict_obj_type;
   l_owner    VARCHAR2 (30)   := ora_dict_obj_owner;
   l_name     VARCHAR2 (30)   := ora_dict_obj_name;
   l_osuser   VARCHAR2 (30);
   CURSOR c1
   IS
      SELECT osuser
        FROM v$session
       WHERE audsid = USERENV ('sessionid');
BEGIN
   IF l_login <> 'SYS'
   THEN
      IF l_owner <> 'SYS'
      THEN
         OPEN c1;
         FETCH c1  INTO l_osuser;
         CLOSE c1;
         INSERT INTO trace_drop
                     (user_login, user_os, date_event, evenement,
                      objet_owner, objet_name, objet_type
                     )
              VALUES (l_login, l_osuser, SYSDATE, l_event,
                      l_owner, l_name, l_type
                     );
      END IF;
   END IF;
END;
__________________
PpPool
PpPool est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 12h14   #3
Rédacteur
 
Inscription : décembre 2002
Messages : 2 391
Détails du profil
Informations personnelles :
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : décembre 2002
Messages : 2 391
Points : 3 281
Points : 3 281
Citation:
Envoyé par Isabella Voir le message
Apres de nombreux essais sur ma base et de longues recherches sur le net ...
Vous auriez sans doute gagné du temps en allant à la source voir la doc, qui liste toutes les options d'audit disponibles.
http://docs.oracle.com/cd/B19306_01/...7.htm#BABEFEAC


Hormis ça, AUDIT TABLE devrait effectivement fonctionner.
Quelle est la valeur du paramètre AUDIT_TRAIL ?
__________________
Consultant / formateur Oracle indépendant
Certifié OCP 10g et 11g, sécurité 11g
Pomalaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 14h11   #4
Membre à l'essai
 
Inscription : mai 2002
Messages : 103
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 103
Points : 20
Points : 20
Merci les gars pour ces réponses

Pomalaix :
voilà pour audit_trail
Code :
1
2
3
4
5
 
SQL> SHOW parameter audit_trail;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------
audit_trail                          string      DB_EXTENDED
d'ailleurs les autres opérations d'audit fonctionnenent bien et la AUD$ ne désemplit pas.

pPpool :
Merci pour le trigger, mais je voudrais d'abord explorer toutes les possibilités d'audit avant de faire recours au trigger, je garde ton code source au cas où
Isabella est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h36.


 
 
 
 
Partenaires

Hébergement Web