Jeśli korzystasz z nowoczesnej wersji bazy danych (9i lub nowszej) i masz licencję Enterprise Edition, możesz użyć funkcji Fine-Graining Auditing. Pozwala nam na audyt zapytań użytkowników na bardzo niskim poziomie szczegółowości, za pomocą zdefiniowanych zasad.
Aby przechwycić tekst SQL i powiązać zmienne, należy odpowiednio ustawić parametr AUDIT_TRAIL podczas dodawania polityki FGA. Dowiedz się więcej.
„Używam standardu 11g, więc funkcje audytu nie są obsługiwane”.
Nie dokładnie. Polecenie AUDIT jest częścią standardowej kompilacji Oracle, ale pozwala nam przechwytywać tylko wtedy, gdy dany użytkownik wysyła SELECT do danej tabeli. Ale tak, aby dowiedzieć się dokładnie co wybrane przez nich wymaga licencji Enterprise Edition.
Nie ma również wyzwalacza ON SELECT, więc nie możemy wylosować własnego.
"Czy mogę używać polecenia AUDIT w wersji standardowej? ... Ale wtedy konsultant powiedział mi, że nie mogę go używać bez płacenia licencji Enterprise?"
Wypowiadając się jako konsultant, muszę przyznać, że ci faceci nie zawsze wiedzą, o czym mówią.
Postawmy więc sprawę jasno:
- polecenie AUDIT jest częścią Oracle SQL. Można go używać z wersją standardową. W rzeczywistości od 11g jest domyślnie włączony. Kontroluje ogólną działalność. Dowiedz się więcej.
- Fine Grained Auditing to pakiet PL/SQL, z którego można korzystać tylko w wersji Enterprise Edition. Pozwala nam na audytowanie aktywności użytkowników na bardzo niskim poziomie. Dowiedz się więcej.