ITPub博客

首页 > 数据库 > Oracle > Oracle 标准审计,设置AUDIT_SYSLOG _LEVEL参数

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

Oracle 作者:Haoword_wang 时间:2023-09-25 23:44:48 0 删除 编辑

本次通过对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’



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26342786/viewspace-2985851/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle Postgresql MySQL DBA,DEVOPS 开发人员

注册时间:2013-03-03

  • 博文量
    73
  • 访问量
    69133