77范文网 - 专业文章范例文档资料分享平台

12、概要文件和数据库审计(4)

来源:网络收集 时间:2018-12-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

? WHENEVER SUCCESSFUL | WHENEVER NOT SUCCESSFUL:选项WHENEVER SUCCESSFUL指要审计成功执行的语句,而WHENEVER NOT SUCCESSFUL指要审计执行失败的语句。如果忽略这两个选项,则无论成功与否都要审计。

? BY SESSION:该选项表示在同一个会话中对相同类型的语句或同一对象的相同操作只生成一条审计记录。BY SESSION是默认选项。

? ?

BY用户名:指定审计某个用户的操作。

BY ACCESS:该选项表示每次执行语句都会生成一条审计记录。如果审计DDL语句或DDL权限,那么无论是否指定BY ACCSS选项,Oracle总是使用BY ACCESS选项。

注意:特权用户和SYS用户的操作不会生成审计记录。 下面介绍如何设置各个级别的审计操作。

1.7.1 语句审计

语句审计用来审计特定类型的SQL语句。设置语句审计一般是由DBA来完成的,如果要以其他用户身份设置语句审计,那么要求该用户必须具有AUDIT SYSTEM系统权限。需要注意的是,当指定了语句审计之后,只会对将来会话起作用,而对当前会话不起作用。

【训练16-12】设置语句审计,检查审计结果。 1)以管理员身份登录

SQL>CONNECT / AS SYSDBA 已连接。 2)命令设置

SQL>AUDIT TABLE BY ACCESS; 审计已成功。 3)实际验证

SQL>CONNECT devp/development 已连接。

SQL>CREATE TABLE tt(a int); 表已创建。

SQL>DROP TABLE tt; 表已丢弃。 4)检查结果

SQL>CONNECT / AS SYSDBA 已连接。

SQL>SELECT to_char(timestamp,'YYYY-MM-DD username,obj_name,action_name FROM DBA_AUDIT_TRAIL;

HH24:MI:SS'),

TO_CHAR(TIMESTAMP,' USERNAME OBJ_NAM ACTION_NAME ---------------------------------------------------------------------- ------------------------------------ 2006-04-04 08:43:42 DEVP TT CREATE TABLE 2006-04-04 08:44:09 DEVP TT DROP TABLE

当设置了语句审计之后,如果用户执行了相关SQL语句,那么Oracle会将相应操作信息记载到审计记录中。例如,当用户DEVP执行CREATE TABLE或DROP TABLE等操作后,Oracle会将该信息记载到表SYS.AUD$中。DBA可以直接查询该表取得审计信息,也可查询数据字典视图DBA_AUDIT_TRAIL取得审计跟踪信息。

1.7.2 权限审计

权限审计用于审计系统权限的使用。大家需要注意,当指定了权限审计之后,只会对将来会话起作用,而对当前会话不起作用。设置权限审计一般是由DBA来完成的,如果要以其他用户身份设置权限审计,那么要求该用户必须具有AUDIT SYSTEM系统权限。

【训练16-13】设置权限审计,审计create view系统权限。 1)以管理员身份登录

SQL>CONNECT / AS SYSDBA 已连接。 2)审计设置

SQL>AUDIT create view WHENEVER SUCCESSFUL; 审计已成功。 3)创建视图

SQL>CONNECT devp/development 已连接。

SQL>CREATE VIEW VEMP AS

select empno,ename from scott.emp; 视图已建立。 4)查询审计结果

SQL>CONNECT / AS SYSDBA 已连接。

SQL>SELECT to_char(timestamp,'YYYY-MM-DD HH24:MI:SS'),username,obj_name,priv_used FROM DBA_AUDIT_TRAIL;

TO_CHAR(TIMESTAMP,' USERNAME OBJ_NAME PRIV_USED ----------------------------------- ----------------------- --------------------- ------------------------ 2006-04-04 09:07:02 DEVP VEMP CREATE VIEW

因为在设置权限审计时指定了WHENEVER SUCCESSFUL选项,所以只有create view

权限执行成功后才会将相应信息记载到审计记录中。

当执行了与权限相关的操作,Oracle则会将该信息记载到审计记录中,通过查询数据字典视图DBA_AUDIT_TRAIL可以取得审计跟踪信息。

1.7.3 对象审计

对象审计用于审计在特定模式对象上所执行的SQL操作。需要注意,当指定了对象审计之后,不仅对将来会话起作用,而且对当前会话也生效。一般情况下,指定对象审计是由DBA来完成的,如果要以其他用户身份设置对象审计,那么要求该用户必须是对象所有者或具有AUDIT ANY系统权限。

【训练16-14】设置对象审计,审计对表SCOTT.DEPT所作的修改操作。 1)以用户登录

SQL>CONNECT / AS SYSDBA

已连接。 2)审计设置

SQL>AUDIT UPDATE ON scott.dept; 审计已成功。

3)修改SCOTT. DEPT表,以验证对象审计。

SQL>CONNECT scott/tiger 已连接。

SQL>UPDATE dept SET loc=’Shenzhen’ WHERE deptno=10; 4)查询审计结果

SQL>CONNECT / AS SYSDBA 已连接。

SQL>SELECT to_char(timestamp,'YYYY-MM-DD HH24:MI:SS'),username,obj_name, action_name FROM DBA_AUDIT_TRAIL;

TO_CHAR(TIMESTAMP,' USERNAME OBJ_NAM ACTION_NAME ---------------------------------------- ------------------------------- ------------------------------------

2006-04-04 10:12:07 SCOTT DEPT SESSION REC

设置了对象审计后,当每次修改SCOTT.DEPT后,Oracle都会将信息记载到审计记录中。

用户scott执行了与对象审计相关的操作,那么Oracle就将信息记载到审计记录中了。通过查询据字典视图DBA_AUDIT_TRAIL,可以获得该审计信息。

1.8 其它审计操作

1.8.1 显示审计选项

在使用审计时,用户可能经常需要查看已经设置了哪些审计选项,并根据需要确定要增加的审计选项。如下一些数据字典视图包含了已经设置的各种审计选项:

? ? ? ?

【训练16-15】查询相关数据字典视图,显示已经设置的语句审计选项。 1)以SYS帐号登录

SQL>CONNECT / AS SYSDBA

已连接。

2)查询数据字典视图

SQL>SELECT user_name,audit_option,success FROM dba_stmt_audit_opts;

USER_NAME AUDIT_OPTION SUCCESS ------------------------------ ---------------------------------------- -------------------- TABLE BY ACCESS CREATE VIEW BY ACCESS

DEVP SELECT ANY TABLE BY SESSION

ALL_DEF_AUDIT_OPTS:包含系统默认的审计选项。 DBA_STMT_AUDIT_OPTS:包含已经设置的语句审计选项。 DBA_PRIV_AUDIT_OPTS:包含已经设置的权限审计选项。 DBA_OBJ_AUDIT_OPTS: 包含已经设置的对象审计选项。

【练习16-1】查询相关数据字典视图,显示已经设置的权限审计和对象审计选项。

1.8.2 显示审计跟踪结果

当执行了与审计相关的操作之后,Oracle会将审计跟踪结果记载到表SYS.AUD$中,通过查询表SYS.AUD$可以获得审计跟踪结果。另外,查询数据字典视图DBA_AUDIT_TRAIL也可以获得审计跟踪结果,它是基于表SYS.AUD$的视图。如下所示:

SQL>SELECT obj_name,action_name FROM dba_audit_trail;

OBJ_NAM ACTION_NAME ---------------------------- ------------------- TT CREATE TABLE TT DROP TABLE VEMP CREATE VIEW

另外,还有一些数据字典视图也可以获得审计跟踪结果:

? DBA_AUDIT_SESSION:显示与会话相关的审计跟踪结果,例如连接和断开连接等。

? ?

DBA_AUDIT_OBJECT:显示审计涉及到的模式对象。 DBA_AUDIT_STATEMENT:显示语句审计的跟踪结果。。

1.8.3 禁止审计

当设置的审计操作完成了相应的审计任务之后,应该禁止审计操作,以免产生太多的审计信息占用系统资源。禁止审计操作是使用NOAUDIT命令由DBA来完成的,如果以其他用户身份禁止语句或权限审计操作,则要求用户必须具有AUDIT SYSTEM系统权限;而如果以其他用户身份禁止对象审计操作,则要求用户必须是对象所有者或具有AUDIT ANY系统权限。

【训练16-16】禁止语句审计。 1)以管理员身份登录

SQL>CONNECT / AS SYSDBA 已连接。 2)禁止审计

SQL>NOAUDIT TABLE; 审计未成功。

当执行了以上语句之后,用户所执行的语句审计信息就不会被记载到审计跟踪记录中了。

1.8.4 删除审计信息

当激活了数据库审计之后,随着时间的推移,审计跟踪信息会越来越多。但是过去审计的信息可能已经不再需要,此时用户应该删除不需要的审计跟踪记录,以释放其所占用的空间。一般情况下,删除审计跟踪记录是由DBA来完成的,如果要以其他用户身份删除审计跟踪记录,则要求用户必须具有DELETE_CATALOG_ROLE角色。

【训练16-17】删除审计记录。 1)以管理员身份登录

SQL>CONNECT / AS SYSDBA

已连接。 2)删除审计记录

SQL>DELETE FROM SYS.AUD$; 已删除36行。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库12、概要文件和数据库审计(4)在线全文阅读。

12、概要文件和数据库审计(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/380167.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: