Такие вещи нужно правами на таблицу регулировать. Например:
GRANT INSERT, UPDATE, DELETE ON schema.tablename TO username; --Дать права
REVOKE INSERT, UPDATE, DELETE ON schema.tablename FROM username; --Отозвать права
upd
Запись в специальный журнал это будет домашнее задание.
create or replace trigger MY_TRIGGER_NAME
before insert or update or delete
on MY_TABLE_NAME
begin
if user in ( 'BAD_USER', 'ANGRY_USER' ) then raise_application_error( -20001,'You do not have access to modify this table.' );
end if;
end;