0
点赞
收藏
分享

微信扫一扫

Oracle 强制审计

妖妖妈 2022-08-18 阅读 48


审计就是对用户行为的检查,即监控用户行为,保证数据安全,记录用户的操作。一般对于数据库来说oracle会对用户登入,退出会话,用sys用户打开和关闭数据库都会建立审计,这种审计一般叫强制性审计。

 

Oracle 强制审计

不管你是否打开数据库的审计功能,以下这些​​操作系统​​会强制记录:用管理员权限连接Instance;启动数据库;关闭数据库。

强制审计变态的功能:

(1)用SYSDBA或者SYSOPER权限登录数据库(conn / as sysdba)

(2)敢startup数据库

(3)敢shutdown数据库

oracle就给你在$ORACLE_BASE/admin/$ORACLE_SID/adump 目录中记.aud的文件,所以,

开了DB功能,会同时将审计日志记在AUD$表中和操作系统aud文件中。设置为NONE,仍然会而且毫无其他办法的将记录在操作系统aud文件中。

*数据库的表为:sys.aud$

*操作系统目录为:$ORACLE_BASE/admin/实例名/adump/

可以查看强制审计产生的日志里面存放的内容,记录的是对sys用户登入进行的审计,强制审计是不对普通用户进行审计的。

 

可通过SQL>show parameter audit 查询到)

SQL> show parameter audit;  --adump存放着强制审计日志的位置

NAME      TYPE

------------------------------------ ----------------------

VALUE

------------------------------

audit_file_dest      string

/u01/app/oracle/admin/oradb/ad

ump

audit_sys_operations      boolean

FALSE

audit_syslog_level      string

audit_trail      string

DB, EXTENDED

 

[root@Database1 adump]# cd /u01/app/oracle/admin/oradb/adump/

[root@Database1 adump]# du -sh *   --每个.adu文件4K大小

4.0K oradb_ora_7292_20180524091140445489143795.aud

4.0K oradb_ora_7329_20180524091848245869143795.aud

 

[root@Database1 adump]# cat oradb_ora_7292_20180524091140445489143795.aud

Audit file /u01/app/oracle/admin/oradb/adump/oradb_ora_7292_20180524091140445489143795.aud

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1

System name: Linux

Node name: Database1

Release: 2.6.39-400.17.1.el6uek.x86_64

Version: #1 SMP Fri Feb 22 18:16:18 PST 2013

Machine: x86_64

VM name: VMWare Version: 6

Instance name: oradb

Redo thread mounted by this instance: 1

Oracle process number: 31

Unix process pid: 7292, image: oracle@Database1 (TNS V1-V3)

 

Thu May 24 09:11:40 2018 +08:00

LENGTH : '160'

ACTION :[7] 'CONNECT'

DATABASE USER:[1] '/'

PRIVILEGE :[6] 'SYSDBA'

CLIENT USER:[6] 'oracle'

CLIENT TERMINAL:[5] 'pts/1'

STATUS:[1] '0'

DBID:[10] '2725871604'

 

是不是很变态?所以这个目录长期不清理的话,会积压大量*.aud文件长期大量不删除的话,会影响到操作系统inodes,所以,小伙伴们:如果为DB,记得定期清空aud$表和adump下面的.aud文件。

 

SQL>truncate table sys.aud$;

如果你不想用DB功能,可以设置关闭

SQL>alter system set audit_trail=none scope=spfile;

注意,需要重启数据库

SQL>shutdown immediate;

SQL>startup;

如果为NONE,记得清空aud文件或者配置crontab定时任务定时清空aud文件。

注意:不要直接删除adump目录,否则,你会sqlplus不了数据库。

 

手动清理:

--进入审计日志目录:

cd $ORACLE_BASE/admin/$ORACLE_SID/adump

删除3个月前的审计文件:find ./ -type f -name "*.aud" -mtime +91|xargs rm -f

一次清空所有审计文件:find ./ -type f -name "*.aud"|xargs rm-f

 

 

 

 

举报

相关推荐

0 条评论