审计事件代表某系统上可审计的操作。审计事件在 /etc/security/audit_event 文件中列出。每个审计事件均连接到一个系统调用或用户命令,并指定给一个或多个审计类。有关 audit_event 文件的格式说明,请参见 audit_event(4) 手册页。
例如,AUE_EXECVE 审计事件将审计 execve() 系统调用。命令 auditrecord -e execve 显示以下条目:
# auditrecord -e execve execve system call execve See execve(2) event ID 23 AUE_EXECVE class ps,ex (0x0000000040100000) header path [attribute] omitted on error [exec_arguments] output if argv policy is set [exec_environment] output if arge policy is set subject [use_of_privilege] return
如果预选审计类 ps 或 ex,则每个 execve() 系统调用都将记录在审计队列中。
审计过程处理可归属和无归属事件。审计策略将事件分为同步事件和异步事件,如下所示:
可归属事件-可归属到某个用户的事件。execve() 系统调用可归属到某个用户,因此将该调用视为可归属事件。所有的可归属事件都是同步事件。
无归属事件-在内核中断级别发生的事件,或在验证用户之前发生的事件。na 审计类处理无归属审计事件。例如,引导系统便是一个无归属事件。多数无归属事件都是异步事件。但是,具有关联进程的无归属事件(如登录失败)是同步事件。
同步事件-与系统中的进程关联的事件。同步事件占系统事件的大多数。
异步事件-与任何进程无关联的事件,因此既不会阻止进程,随后也不会启动进程。例如,初始系统引导和 PROM 进入和退出事件都是异步事件。
除了审计服务定义的审计事件,第三方应用程序也可以生成审计事件。审计事件编号 32768 到 65535 适用于第三方应用程序。供应商需要联系其 Oracle Solaris 代表,以保留事件编号并获取对审计界面的访问权限。