`
fudehai001
  • 浏览: 498726 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Oracle Audit 功能的使用方法介绍

阅读更多
一. 视图说明:
1. SYS.AUD$
审计功能的底层视图,如果需要对数据进行删除,只需要对aud$视图进行删除既可,其他视图里的数据都是由aud$所得.
2. DBA_AUDIT_EXISTS
列出audit not exists和audit exists产生的审计跟踪,我们默认的都是audit exists.
3. DBA_AUDIT_TRAIL
可以在里面查处所有审计所跟踪的信息.
4. DBA_AUDIT_OBJECT
可以查询所有对象跟踪信息.(例如,对grant,revoke等不记录),他的信息完全包含于dba_audit_trail
5. DBA_AUDIT_SESSION
所得到的数据都是有关logon或者logoff的信息.
6. DBA_AUDIT_STATEMENT
列出grant ,revoke ,audit ,noaudit ,alter system语句的审计跟踪信息.
7. DBA_PRIV_AUDIT_OPTS
通过系统和由用户审计的当前系统特权
8. DBA_OBJ_AUDIT_OPTS
可以查询到所有用户所有对象的设计选项
9. ALL_DEF_AUDIT_OPTS
(还没明白出其确切意义)
10. AUDIT_ACTIONS
可以查询出在aud$等视图中actions列的含义
11. SYSTEM_PRIVILEGE_MAP
可以查询出aud$等视图中priv$used列的含义(注意前面加’-‘)
12.
二. 对audit的设置
1.需要对audit_trail参数进行设置.该参数有三个值可以设置,默认为false,为不进行审计.当设置为OS时,对数据库进行设计的信息记录到操作系统中,当为DB时记录入sys.aud$中.
2.需要对sys用户进行审计,需要设置AUDIT_SYS_OPERATIONS = TRUE,该参数默认值为false,为不进行审计.当对其设计时,所有的信息将记录入操作系统中而不记录入SYS.AUD$
注:当记录入操作系统中时,其参数控制为AUDIT_FILE_DEST
三. 审计
1. by session与by access
当设置为by session时,对每个session下每条审计记录只出现一次,by access对每次操作都进行记录,by access将会带来大量的记录.
2. by user
如果在命令后面添加by user则只对user的操作进行审计,如果省去by 用户,则对系统中所有的用户进行审计(不包含sys用户).

四. 测试情况
Session1设置设计选项(sys),简写为S1, session2查询结果(user),简称S2,其他为测试连接session(user),为sessionn(n >2)
1. 对表的审计
对create table进行审计(需要对成功与失败两种情况进行测试)
S1:
SQL> audit create table by user;
S3:
SQL>create table test (id number);
SQL>create table test (id number);(要报错)
S2:
SQL>select username,returncode,action_name from dba_audit_trail;
user 955 CREATE TABLE
user 0 CREATE TABLE
S1:
SQL>truncate table aud$
对修改表(alter table)进行审计
S1:
SQL> audit alter table by user;
S3:
SQL> alter table test add( col number);
SQL> alter table test add( col number); (要报错)
S2:
SQL>select username,returncode,action_name from dba_audit_trail;
user 0 ALTER TABLE
user 1430 ALTER TABLE
S1:
SQL>truncate table aud$
对删除表(drop table)进行审计 由于没有对drop table进行单独审计的操作,需要添加audit table by user(此命令将对create table ,drop table, truncate table 进行审计)
S1:
SQL> audit table by user;
S3:
SQL> drop table test;
SQL> drop table test;(将报错)
SQL>create table test(id number);
SQL> truncate table test;
S2:
SQL>select username,returncode,action_name from dba_audit_trail;
1 user 0 DROP TABLE
2 user 942 DROP TABLE
3 user 0 CREATE TABLE
4 user 0 TRUNCATE TABLE
S1:
SQL>truncate table aud$

2. 对视图的审计
对创建视图(create view)进行审计
S1:
SQL> audit create view by user;
S3:
SQL> create view test0 as select * from test;
SQL> create view test0 as select * from test;(要报错)
S2:
SQL>select username,returncode,action_name from dba_audit_trail;
1 user 955 CREATE VIEW
2 user 0 CREATE VIEW
S1:
SQL>truncate table aud$

对修改视图(alter view)进行审计 没有对视图进行修改的操作,所以审计修改视图也就不存在.
对删除视图(drop view)进行审计 由于没有对drop view进行单独审计的操作,需要添加audit view by user(此命令将对create view ,drop view进行审计)
S1:
SQL> audit view by user;
S3:
SQL> drop view test0;
SQL> drop view test0; (将报错)
SQL> create view test0 as select * from test;;
S2:
SQL>select username,returncode,action_name from dba_audit_trail;
1 user 0 DROP VIEW
2 user 942 DROP VIEW
3 user 0 CREATE VIEWS1:
SQL>truncate table aud$

3. 对程序包的审计
目前没有对程序包的重新编译进行审计.对包,函数以及存储过程的审计都可以通过audit procedure by user进行审计.
S1:
SQL> audit procedure by user;
S3:
SQL> create procedure test1
2 as
3 begin
4 null;
5 end;
6 /
SQL> drop procedure test1;
SQL> drop procedure test1;

S2:
SQL>select username,returncode,action_name from dba_audit_trail;
1 user 0 CREATE PROCEDURE
2 user 0 DROP PROCEDURE
3 user 4043 DROP PROCEDURE
SQL>truncate table aud$

4. 对用户的审计
对用户的审计可以有audit user来实现,该命令可以审计create user,alter user,drop user.
S1:
SQL> audit user by user;
S3:
SQL> create user zyc identified by zyc;
SQL> alter user zyc identified by 000; (要报错)
SQL> alter user zyc identified by zyc; (要报错)
SQL> alter user zyc identified by aaa;
SQL> drop user zyc;
SQL> drop user zyc; (要报错)

S2:
SQL>select username,returncode,action_name from dba_audit_trail;
1 user 0 CREATE USER
2 user 988 ALTER USER
3 user 28007 ALTER USER
4 user 0 ALTER USER
5 user 0 DROP USER
6 user 1918 DROP USERS1:
SQL>truncate table aud$

综上所述:
1. 对表的审计:可以单独对表的create,alter进行审计,如果要对drop操作进行审计需要对表加audit table(该命令包含有create table,drop table,truncate table).
2. 对视图的审计:可以单独对视图的create进行审计,如果要对drop操作进行审计需要对视图加audit view(该命令包含有create view,drop view).
3. 对程序包的审计:可以对包(函数,存储过程等)的create进行审计,如果需要对drop操作进行审计需要加audit procedure(该命令对CREATE FUNCTION, CREATE LIBRARY , CREATE PACKAGE, CREATE PACKAGE BODY, CREATE PROCEDURE, DROP FUNCTION, DROP LIBRARY, DROP PACKAGE, DROP PROCEDURE进行审计)
4. 对用户的审计:可以通过audit user(该命令包含 create user,alter user,drop user)进行审计.
分享到:
评论

相关推荐

    oracle开启audit(审计)

    本文将深入探讨如何在Oracle环境中配置和使用Audit功能,包括必要的步骤、参数调整以及实战示例。 #### 配置Audit环境 首先,确保Oracle数据库已经正确安装和运行,并且拥有足够的权限进行参数设置。以下是在...

    Oracle audit vault管理手册

    Oracle审计保险库(Oracle Audit Vault)是一款由Oracle公司开发的数据库审计和安全管理软件,它可以帮助企业收集和分析数据库活动,并提供强大的安全监控功能。该产品可以支持多种数据库和应用服务器平台,并能够...

    Oracle审计功能详解

    "Oracle审计功能详解" Oracle审计功能是指Oracle数据库中的一种安全机制,用于记录和跟踪用户对数据库的访问和操作行为。这种机制可以帮助DBA和安全管理员发现和防止不正当的访问和操作。 一、审计分类 Oracle...

    Oracle审计功能Audit.pdf

    对于Oracle10g及以上版本,文件中提到了增强的审计功能,比如使用LogMiner工具进行审计日志的分析,以及实现审计数据的XML格式化输出。 此外,文件中还提及了审计文件存放的目录,这是通过audit_file_dest参数来...

    Oracle Audit 审计

    Oracle Audit 审计是Oracle数据库管理系统中的一种安全特性,它允许管理员监控并记录数据库用户的活动,以便追踪潜在的安全问题或合规性需求。审计可以记录多种操作,包括数据查询、更新、删除以及系统权限的使用等...

    ORACLE_审计内容_DBA_AUDIT_TRAIL.xlsx

    Oracle审计内容DBA_AUDIT_TRAIL数据字典说明,根据开启的Oracle审计功能,读取dba_audit_trail视图的审计内容包含用户名、操作时间、操作类型、SQL文本、数据库操作次数等等,此文档是对dba_audit_trail视图的中文简介,...

    Oracle数据库11g各版本介绍及功能比较

    Oracle 数据库 11g 各版本介绍及功能比较 Oracle 数据库 11g 提供了多个版本供选择,包括标准版、企业版等。这些版本都使用相同的通用代码库构建,这意味着企业的数据库管理软件可以轻松地从规模较小的单一处理器...

    Oracle审计功能介绍.docx

    Oracle审计功能介绍 Oracle审计功能是一种强大的工具,用于跟踪和记录数据库中的各种操作活动,以确保数据库的安全和完整性。本文将对Oracle审计功能进行详细的介绍,包括审计分类、标准审计、细粒度审计、审计类型...

    Oracle Database12c 各功能选件介绍

    Oracle Database 12c还提供了一系列的相关产品,例如Airline Data Model、Communications Data Model、Oracle Audit Vault and Database Firewall、Oracle 大数据机、Oracle Big Data Connectors、Oracle 云文件系统...

    最完整的Toad For Oracle使用手册

    - **Task Bar & Status Bar**:解释了任务栏和状态栏的功能及使用方法。 - **Toolbars, Menus and Shortcut Keys**:详述了工具栏、菜单以及快捷键的使用。 #### 六、安装与管理 - **Installation and ...

    oracle触发器功能介绍

    理解并正确使用Oracle触发器,可以帮助我们更好地管理和保护数据库中的数据,同时要注意合理使用,以避免潜在的问题。通过学习和实践,我们可以将触发器作为工具箱中的一项有力武器,为数据库的健壮性和稳定性保驾...

    利用Oracle审计功能记录数据库操作.docx

    Oracle审计功能记录数据库操作 Oracle审计功能是记录数据库操作的重要工具,用于监视用户所执行的数据库操作。下面是Oracle审计功能的知识点总结: 一、什么是审计(Audit) 审计是指对用户所执行的数据库操作的...

    Oracle审计功能介绍.pdf

    Oracle审计功能是数据库管理系统Oracle中的一个重要安全特性,用于...Oracle审计功能提供了强大的监控和安全性,但需要注意,大量审计记录可能会消耗大量存储空间,因此在使用时需要根据实际需求和资源情况进行配置。

    oracle 审计功能说明

    Oracle审计功能是数据库管理系统中一个重要的安全性特性,用于跟踪并记录数据库用户执行的各种操作,以实现数据保护和合规性需求。在Oracle 10g版本中,审计功能可以帮助管理员监控和记录潜在的可疑活动,例如非授权...

    Oracle数据库高级安全功能介绍.docx

    3. Oracle Audit Vault:这个组件用于集中管理和保护审计数据,支持多种数据库平台,包括Oracle、SQL Server、Sybase和IBM DB2。它提供合规性报告和针对特权用户活动的监控,以及针对可疑活动的警报功能。 4. ...

    EBS-审计功能(Audit-Trail).docx

    EBS (Enterprise Business Suite) 是一套由Oracle公司开发的企业管理软件系统。它包括了财务管理、供应链管理、人力资源管理和项目管理等多个方面,旨在帮助企业高效地管理其日常业务活动。 **EBS自带审计功能**是...

    利用Oracle审计功能记录数据库操作.doc

    审计功能会跟踪并记录用户在数据库中的操作,记录的信息可能存储在操作系统文件(默认位于$ORACLE_BASE/admin/$ORACLE_SID/adump/)或者数据库的SYS.AUD$表中,可以通过DBA_AUDIT_TRAIL视图进行查看。默认情况下,...

    Oracle审计功能.docx

    Oracle数据库的审计功能是数据库管理系统中用于监控和记录用户活动的重要工具,它可以帮助管理员追踪数据库的使用情况,确保数据安全和合规性。Oracle审计分为两种主要类型:标准审计和细粒度审计。 一、审计分类 ...

Global site tag (gtag.js) - Google Analytics