Bo's Oracle Station

查看: 1973|回复: 0

第40次:2015-04-23星期四

[复制链接]

1005

主题

1469

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12012
发表于 2015-4-24 15:02:00 | 显示全部楼层 |阅读模式
  1. select  * from dba_obj_audit_opts;

  2. select  * from dba_stmt_audit_opts;

  3. select  * from dba_priv_audit_opts  order by 3 ;

  4. select  * from dba_common_audit_trail  where db_user='SH' order by 6 desc;

  5. select  * from dba_audit_trail;

  6. noaudit drop any table ;

  7. audit drop any table by sh whenever successful;

  8. grant drop any table to sh;

  9. select  table_name, tablespace_name  from dba_tables where tablespace_name ='TBSAUDIT';

  10. alter table taudit1 move tablespace tbsaudit;

  11. select  * from taudit1;

  12. create table taudit2 tablespace tbsaudit as select * from taudit1 where 1=2;

  13. alter table taudit2 add ( old_value number(8,2)  , new_value number(8,2)) ;

  14. alter table taudit2 add ( employee_id number(4)) ;

  15. select  * from taudit2;

  16. CREATE OR REPLACE TRIGGER hrsalary_audit
  17.    AFTER UPDATE OF salary  ON hr.employees
  18.        REFERENCING NEW AS NEW OLD AS OLD
  19.           FOR EACH ROW  
  20.             
  21.    BEGIN
  22.       IF :old.salary != :new.salary
  23.       THEN   
  24.           INSERT INTO taudit2  
  25.                 VALUES (sys_context('userenv','session_user'),  sysdate,     sys_context('userenv','ip_address'),
  26.                   sys_context('userenv','authentication_method'),     
  27.                    :old.salary ,  :new.salary   ,   :new.employee_id  );
  28.   END IF;
  29.   END;
  30.   
  31.   select  * from  user_errors;

  32.   select  * from dba_triggers t where t.trigger_name='HRSALARY_AUDIT';
  33.   
  34.     select * from dba_fga_audit_trail;
  35.    
  36.     select  * from dict where table_name like 'DBA%POLIC%';
  37.    
  38.     select  * from DBA_AUDIT_POLICIES;
  39.   

  40. ---
  41. select text from dba_source where name='DBMS_FGA' and type='PACKAGE';

  42. ---


  43. begin
  44.   dbms_fga.add_policy(
  45. OBJECT_SCHEMA                =>'HR',
  46. OBJECT_NAME        =>'EMPLOYEES',
  47. POLICY_NAME=>'POLICY1',
  48. AUDIT_CONDITION        =>'department_id=20',
  49. AUDIT_COLUMN        =>'salary,commission_pct',
  50.   STATEMENT_TYPES                =>'SELECT,INSERT,UPDATE,DELETE',
  51. AUDIT_TRAIL        =>5,
  52. handler_schema => 'SYS',
  53. handler_module => 'PROC_FGA'  );
  54. end;

  55. select  * from dba_common_audit_trail  where db_user='HR' order by 6 desc;

  56. create table taudit3 tablespace tbsaudit as select * from taudit1 where 1=2;

  57. alter table taudit3   add ( p_owner  varchar2(30),
  58.                                          p_object varchar2(30),
  59.                                           p_policy  varchar2(30));

  60. create or replace procedure proc_fga(p_owner  varchar2 ,
  61.                                                                p_object varchar2,
  62.                                                                p_policy  varchar2)
  63.    is
  64.    begin
  65.        insert into    taudit3 values (  sys_context('userenv','session_user'),  sysdate,     sys_context('userenv','ip_address'),
  66.                   sys_context('userenv','authentication_method'),  p_owner,  p_object,    p_policy);
  67.      end;                                          
  68.       
  69.      select * from user_errors;  
  70.      
  71.      select  * from dba_objects o where o.owner='SYS' and o.object_name='PROC_FGA';        
  72.      
  73.      ---
  74.      
  75.      begin
  76.         dbms_fga.drop_policy(   OBJECT_SCHEMA=>'HR',    object_name => 'EMPLOYEES', policy_name => 'POLICY1');
  77.         end;
  78.         
  79.         ---
  80.         select  * from taudit3;
  81.         
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-11-22 00:10 , Processed in 0.036242 second(s), 24 queries .

快速回复 返回顶部 返回列表