Oracle - журнал аудита для конкретного пользователя

Как указано в теме, я ищу способ отслеживать действия конкретного пользователя. Может иметь или не иметь привилегию SYSDBA или SYSOPER.

Например, HR.

Я хотел бы знать, каковы подробности его входа в систему, какие объекты были изменены им, каковы были их исходные значения, выполненные операторы SQL, какие процедуры / функции были выполнены и т. Д.

Можно ли настроить такой журнал аудита в Oracle 11gR2 Standard / Enterprise?

Спасибо


person Annon    schedule 01.02.2017    source источник


Ответы (1)


Прежде всего, вам нужно включить аудит в своей базе данных, установив параметр audit_trail, как показано ниже:

SQL> alter system set audit_trail='OS|DB|DB,EXTENDED|XML|XML, EXTENDED';

Параметры инициализации, используемые для аудита

Затем вы можете проводить аудит пользователя как-

SQL>CONNECT sys/password AS SYSDBA

SQL> AUDIT ALL BY username BY ACCESS;
SQL> AUDIT SELECT TABLE, UPDATE TABLE, INSERT TABLE, DELETE TABLE BY username BY ACCESS;
SQL> AUDIT EXECUTE PROCEDURE BY username BY ACCESS;

АУДИТ

Записи аудита можно найти в DBA_AUDIT_TRAIL представлении. После запроса выведите список всех представлений, связанных с аудитом.

SQL>SELECT view_name FROM dba_views WHERE view_name LIKE 'DBA%AUDIT%';

Детальный аудит доступен только в Enterprise Edition.

Доступность функций по редакциям

person atokpas    schedule 01.02.2017