Oracle 标准审计,设置AUDIT_SYSLOG _LEVEL参数

来源:这里教程网 时间:2026-03-03 19:00:06 作者:

本次通过对MOS 的学习,了解标准审计中涉及的参数AUDIT_SYSLOG _LEVEL 配置 1) AUDIT_SYSLOG_LEVEL参数。当AUDIT_TRAIL参数设置为OS时,使用syslog实用程序将SYS和标准操作系统审计记录写入系统审计日志。      要对所有用户(特权用户和非特权用户)启用syslog审计,需要为AUDIT_TRAIL初始化参数指定一个OS值,具体操作请参见“设置AUDIT_TRAIL初始化参数”。我们还必须手动将AUDIT_SYSLOG_LEVEL参数添加到数据库的初始化参数文件init.ora中。按照AUDIT_SYSLOG_LEVEL=facility.priority的格式为AUDIT_SYSLOG_LEVEL参数分配一个设施和优先级。facility参数描述正在记录消息的操作系统部分,而priority参数定义事件的严重性 AUDIT_SYSLOG_LEVEL=local1.warning 将AUDIT_SYSLOG_LEVEL初始化参数设置为默认值

(NONE)将导致dba获得对OS审计记录的访问权。 2)启用syslog日志审计,请执行以下步骤:

2.1)给AUDIT_TRAIL初始化参数赋一个OS值:

例如:

Sql > alter system set audit_trail = os scope = spfile;

2.2)同时设置AUDIT_SYSLOG_LEVEL参数:

SQL> ALTER SYSTEM SET AUDIT_SYSLOG_LEVEL="local1.warning" SCOPE=SPFILE;

设置AUDIT_SYSLOG_LEVEL参数,以AUDIT_SYSLOG_LEVEL=facility.priority的格式指定设施和优先级。

facility:描述正在记录消息的操作系统部分。可接受的取值为user、local0-local7、syslog、daemon、kern、mail、auth、lpr、news、uucp和cron。 其中: local0-local7值是预定义的标记,我们能够对syslog消息进行分类。这些类别可以是日志文件或syslog实用程序可以访问的其他目的地。要查找有关这些标记类型的更多信息,请参阅syslog实用程序MAN页面。 priority:定义消息的严重程度。接受的值是notice、info、debug、warning、err、crit、alert和emergent。 syslog守护进程将分配给AUDIT_SYSLOG_LEVEL参数的facility参数的值与syslog.conf文件进行比较,以确定在何处记录信息。写入syslog条目的决定不属于Oracle服务,而属于syslog守护进程。

例如,下面的语句将设施标识为local1,优先级级别为警告:

AUDIT_SYSLOG_LEVEL = local1.warning

有关AUDIT_SYSLOG_LEVEL的更多信息,请参见Oracle数据库参考。 2.3)将审计文件destination添加到syslog配置文件/etc/syslog.conf中。

例如,假设您已经将 AUDIT_SYSLOG_LEVEL to local1.warnin,输入如下:

local1.warning    /var/log/audit.log

此设置将所有警告消息记录到/var/log/audit.log文件中。 注释:在syslogd.conf中使用TAB而不是空格分隔条目,否则它可能不适用于所有syslogd版本,所以上面的内容实际上是:

local1.warning <选项卡> <选项卡> / var / log / audit.log 还可以按如下方式预创建文件(以root用户):

# touch /var/log/audit.log

文件syslog.conf中用于消息的工具行应该出现在“catch all”设置之前,并且您还应该包含适当的.none条目来“catch all”。 2.4)重启syslog日志记录器:

美元到/ etc / init.d / syslog重启

现在,将通过syslog守护进程在/var/log/audit.log文件中捕获所有审计记录。

在此之后,当用户从表TEST中选择并审计操作时(例如通过审计设置:audit select table;),以下信息将添加到audit.log文件中:

2.5)重启数据库实例: CONNECT SYS / AS SYSOPER Enter password: password Connected. SQL> SHUTDOWN; Database closed. Database dismounted. ORACLE instance shut down. SQL> STARTUP; ORACLE instance started. 注释: 由于修复未发布的错误4085593(包含在注释731908.1引用的补丁中)所做的更改导致以下行为: 设置AUDIT_TRAIL=XML(或XML,EXTENDED)和AUDIT_SYSLOG_LEVEL时,强制审计和SYS审计记录写入SYSLOG文件,常规审计记录写入XML格式的OS文件。

如果日志文件变得太大,Oracle不能再写入它,需要采取以下操作: 1. stop database(s), 2. login as root 3. Stop syslogd 4. clean or archive audit data 5. restart syslogd 6 start database 为了避免这种情况,可以配置logrotate设施。这允许自动删除和旋转日志文件。可以通过编辑logrotate.conf文件并添加compress选项来激活压缩。有关更多信息,请参阅logrotate手册。 参考文档:MOS: 553225.1 ‘https://docs.oracle.com/en/database/oracle/oracle-database/12.2/refrn/AUDIT_SYSLOG_LEVEL.html#GUID-EBBAD1D4-A4F8-49A4-9C4E-7CF6A085CB53’

相关推荐