- 浏览: 487890 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (258)
- 0-中医 (83)
- 1-工作 (4)
- 2-生活 (17)
- 3-其他 (3)
- oracle_dev (5)
- oracle_dba (35)
- ebs_gl (1)
- ebs_ap (0)
- ebs_po (0)
- ebs_hr_people (0)
- ebs_hr_payroll (0)
- java (12)
- javaScript (7)
- JSP2.0 (4)
- springMVC (3)
- spring (4)
- iBatis (5)
- Hibernate (3)
- tomcat (2)
- linux (13)
- 网络 (3)
- python (25)
- Django (11)
- z-技术 (13)
- PHPCMS (0)
最新评论
-
bo521dai:
Bravo. contains everything.
Oracle调优总结 -
yangxiutian:
固态硬盘是什么东东,既然对硬件有约束,我想推广难啊,除非若干年 ...
未来操作系统(组图) -
showzh:
...
listener.ora 、sqlnet.ora 、tnsnames.ora的关系以及手工配置举例 -
489687009:
我特别想问一下楼主,现在有了框架后,jsp2.0还有用武之地吗 ...
JSP2.0入门 -
liuzl121:
你好 我刚学java,我想请教下这个SignonControl ...
log4j详尽配置实战(for spring)
一. 视图说明:
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)进行审计.
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 9I UNDO Tablespace
2010-05-13 09:20 1451(9i以前称为Rollback segment;9i称为Und ... -
Archive Log 学习笔记 --oracle 数据库
2010-02-22 14:35 1527一、归档的启用,停用和自动归档 1、启用和停用archi ... -
exp和imp 用法和介绍 --oracle数据库
2010-02-22 13:51 3138EXP导出范例: E:\software>D:\ora ... -
深入理解user和schema --oracle 数据库
2010-02-22 11:39 2540前言: user是控制权限 ... -
Oracle数据库中快照snapshot的使用
2010-02-22 10:57 3166oracle数据库的快照是一个表,它包含有对一个本地或远程数 ... -
ORACLE EXPLAIN PLAN的总结
2010-02-22 09:29 2039在ORACLE数据库中,需要对SQL语句进行优化的话需要知道其 ... -
oracle常用命令
2010-01-20 16:09 1796一、ORACLE的启动和关闭 ... -
oracle em(Enterprise Manager) 收集贴
2009-12-11 13:56 3297em配置命令 ======================== ... -
ORACLE 簇的详细介绍
2009-12-11 11:35 13471. 什么是聚簇 聚簇是根据码值找到数据的物理存储位置 ... -
Oracle_体系架构_后台进程及从进程详解
2009-12-11 11:23 1444后台进程包括: 1)Focused Background P ... -
动态性能表V$sysstat
2009-09-18 13:54 895from: http://oracledba.iteye.co ... -
Installing Oracle Database 10g Release 2 on Linux x86 (RHEL4 and SLES9 covered)
2009-08-06 15:25 1993by John Smiley Learn the ... -
Linux下oracle常见安装错误总结
2009-08-06 14:37 2480from: http://home.ixpub.net/spa ... -
在RedHat 5下安装Oracle 10g详解
2009-08-06 13:37 7803方案一: 作者:Roc 说明:根据网上很多文档的学习,结合本人 ... -
Oracle9i rman备份恢复总结
2009-06-30 09:23 1792Recovery Manager(RMAN)是一种用于备份( ... -
Oracle使用回闪找回删除的数据
2009-05-15 13:11 2669如果不小心删除了oracle表中不应该删除的数据,这时候又想找 ... -
Oracle面试题集锦-技术篇
2009-05-15 12:32 25621. 解释冷备份和热备份的不同点以及各自的优点 解答:热 ... -
oracle 配置文件 解析
2009-05-13 10:39 1514Oracle主要配置文件: ... -
listener.ora 、sqlnet.ora 、tnsnames.ora的关系以及手工配置举例
2009-05-13 09:56 20739解决问题:TNS或者数据库不能登录。 最简单有效方法:使用or ... -
Oracle备份与恢复案例(By Piner)
2009-05-12 17:11 1529一. 理解什么是数据库 ...
相关推荐
oracle开启audit(审计)的详细过程.
Oracle审计功能Audit.pdf
Oracle审计内容DBA_AUDIT_TRAIL数据字典说明,根据开启的Oracle审计功能,读取dba_audit_trail视图的审计内容包含用户名、操作时间、操作类型、SQL文本、数据库操作次数等等,此文档是对dba_audit_trail视图的中文简介,...
介绍如何最大化地发挥oracle数据库、oracle databasevault、oracle identity management、oracle application express以及oracle business intelligence suite的安全特性。本书通过独家的权威资源,为您提供经过验证...
审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_SID/adump/)或数据库(存储在system表空间中的SYS.AUD$表中,可通过视图dba_audit_...
EBS自带审计功能,审计功能是记录系统使用者的操纵记录,例如什么时间对哪张表的那个的字段做了修改、删除等操作,审计功能都会记录相应的时间、修改者、修改前该字段的值。在实际业务中对一些敏感信息(例如订单行...
审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin /$ORACLE_SID/adump/) 或数据库(存储在system表空间中的SYS.AUD$表中,可通过视图dba_audit...
即使关闭数据库实例,仍然可以继续使用保存在数据库外的审计日志,但还是可以通过一个新的视图,V$XML_AUDIT_TRAIL,从数据库中对它们进行查询。要激活XML文件审计功能,需要设定两个初始化参数。
§8.2.4 使用COPY功能 195 §8.2.5 管理Oracle名称服务器 196 §8.3 关于上下文的使用 196 §8.3.1 设置上下文选项 196 §8.3.2 为上下文查询设置表 197 §8.3.3 优化文本索引 199 §8.4 关于维数(DIMENSION) 199 ...
说明: 指定 Oracle 使用哪种日历系统作为日期格式。例如, 如果 NLS_CALENDAR 设置为 'Japanese Imperial', 那么日期格式为 'E YY-MM-DD'。即: 如果日期是 1997 年 5 月 15 日, 那么 SYSDATE 显示为 'H 09-05-15'。 ...
Oracle审计(Audit)功能用于监视用户所执行的数据库操作,审计记录可存在数据字典表(称为审计记录:存储在system表空间中的 SYS.AUD$表中,可通过视图dba_audit_trail查看)或操作系统审计记录(默认位置为$ORACLE...
选择资源类型和发布方法 40 定位要发布的应用程序 41 验证已发布应用程序的命令行参数 42 在内容与已发布应用程序之间建立信任关系 42 禁用所选已发布应用程序的命令行验证 42 禁用服务器上所有已发布应用程序的...
数据库安全审计系统 数据库安全审计管理系统示意图 英文:Database security audit system 数据库安全审计系统主主要用于监视并记录对数据库服务器的各类操作行为,通过 对网络数据的分析,实时地、智能地解析对...
"2000条/秒 "4000条/秒 " "度: " " " " " "参考价"26万元 "32万 "30万元 "40万 " 产品硬件指标 产品功能: 支持数据库类型: Oracle、Informix、DB2、SQL-Server、Sybase、MySQL 支持其它协议: http、telnet、FTP ...
介绍 Archery是archer的分支项目,定位于SQL审核查询平台,旨在提升DBA的工作效率,支持多数据库SQL上线和查询,同时支持丰富MySQL运维功能,所有功能都兼容手机端操作 功能清单 查询 审核 执行 备份 数据字典 慢...