Oracle 11g版本2中的Audding



我们已经将audit_track设置为DB,扩展。我正试图限制对特定用户的审核。但默认情况下,所有用户(对象)DML操作都是审核操作。

我试图使用所有这些语句来停止审计:

SQL> NOAUDIT ALL;
Noaudit succeeded.
SQL> NOAUDIT ALL ON DEFAULT;
Noaudit succeeded.
SQL> NOAUDIT SESSION;
Noaudit succeeded.
SQL> noaudit select any table by X;
SQL> noaudit all by X;

但它仍在审核所有dml操作(也适用于x模式)

没有审计政策,我看到下面报表的输出

SELECT * FROM DBA_PRIV_AUDIT_OPTS UNION SELECT * FROM DBA_STMT_AUDIT_OPTS;
null EXEMPT ACCESS POLICY By Access By Access

所以我也禁用了

noaudit EXEMPT ACCESS POLICY;

Oracle 11g Release 2数据库运行在64位的CentOS上。

请让我知道,这是11g数据库的默认行为。如果是的话,有什么办法可以限制它吗?

非常感谢你的帮助。

谢谢!

默认情况下,数据库将记录何时停止或启动,以及用户何时使用SYSDBA或SYSOPER权限登录。

Oracle Database 11g audits the following privileges by default: 
ALTER ANY PROCEDURE DROP ANY TABLE       CREATE ANY PROCEDURE
ALTER ANY TABLE     DROP PROFILE         CREATE ANY LIBRARY  
ALTER DATABASE      DROP USER            CREATE ANY TABLE
ALTER PROFILE       DROP ANY PROCEDURE   CREATE EXTERNAL JOB
ALTER SYSTEM        EXEMPT ACCESS POLICY CREATE PUBLIC DATABASE LINK
ALTER USER          AUDIT SYSTEM         CREATE SESSION
GRANT ANY PRIVILEGE GRANT ANY ROLE       CREATE USER
GRANT ANY OBJECT PRIVILEGE               CREATE ANY JOB

参考:https://docs.oracle.com/cd/E11882_01/server.112/e10575/tdpsg_auditing.htm#TDPSG50000

在您的情况下,您可以检查是否启用了细粒度审计。您可以使用以下SQL进行检查。

SQL> SET lines 150
SQL> SELECT object_schema,object_name,policy_name,policy_column,enabled,sel,ins,upd,del FROM dba_audit_policies;
SQL> SELECT * FROM dba_audit_policy_columns;

最新更新