Se stai utilizzando una versione moderna del database (9i o successiva) e disponi di una licenza Enterprise Edition, puoi utilizzare il controllo a grana fine. Ci consente di controllare le query degli utenti a un livello di granularità molto basso, attraverso criteri definiti.
Per acquisire testo SQL e associare variabili, sarà necessario impostare il parametro AUDIT_TRAIL in modo appropriato quando si aggiunge una policy FGA. Scopri di più.
"Sto utilizzando uno standard 11g, quindi le funzioni di controllo non sono supportate."
Non esattamente. Il comando AUDIT fa parte della build Oracle standard, ma ci consente di acquisire solo quando un determinato utente emette un SELECT su una determinata tabella. Ma sì, per scoprire esattamente cosa stanno selezionando richiede la licenza Enterprise Edition.
Inoltre non esiste un trigger ON SELECT, quindi non possiamo lanciare il nostro.
"Quindi posso usare il comando AUDIT nell'edizione standard? ... Ma poi un consulente mi ha detto che non posso usarlo senza pagare la licenza aziendale? "
Parlando io stesso come consulente, devo dire che quei ragazzi non sempre sanno di cosa stanno parlando.
Cerchiamo quindi di essere chiari:
- il comando AUDIT fa parte di Oracle SQL. È utilizzabile con la Standard Edition. Infatti da 11g è abilitato di default. Controlla l'attività generale. Scopri di più.
- Il controllo a grana fine è un pacchetto PL/SQL utilizzabile solo se si dispone dell'edizione Enterprise. Ci consente di controllare l'attività degli utenti a un livello molto basso. Scopri di più.