Включить аудит, который будет идти в определенном табличном пространстве - PullRequest
0 голосов
/ 06 июня 2019

Мне нужно включить аудит для моей базы данных с такими спецификациями:

  1. Весь аудит и индексы должны идти во вновь созданное табличное пространство
  2. It должен показывать логин / выход для всех пользователей
  3. Это должно показать все ВЫБРАТЬ / ОБНОВИТЬ / УДАЛИТЬ, что сделали пользователи

Я пытался сделать это так (не работает):

ALTER SYSTEM SET audit_trail=db SCOPE=SPFILE;
SHUTDOWN
STARTUP
audit alter system by access;
AUDIT CREATE PROCEDURE
AUDIT CREATE TABLESPACE
audit insert, update, delete on something by hr by session whenever not successful;
audit something view by somebody by access whenever successful;
AUDIT ROLE;
AUDIT READ ON DIRECTORY ext_dir;

CREATE TABLESPACE SYSAUD
DATAFILE ' SYSAUD_01.dat'
SIZE 1G
AUTOEXTEND ON
ONLINE;

exec DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION(AUDIT_TRAIL_TYPE=>DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD,AUDIT_TRAIL_LOCATION_VALUE => 'SYSAUD') ;

AUDIT SELECT TABLE, UPDATE TABLE, INSERT TABLE, DELETE TABLE BY ACCESS;

Но, похоже, это не работает для меня, и я не уверен, как я могу проверить аудит. Если я напишу:

 Select * from SYSAUD

Я ничего не вижу.

Поскольку у меня была копия базы данных, я откатывал все команды, и теперь я должен делать это с самого начала. Но я не уверен, что я сделал не так?

1 Ответ

1 голос
/ 06 июня 2019

SYSAUD - это табличное пространство, место хранения, а не таблица.Для просмотра журнала аудита вы выбираете из SYS.AUD$.

...