qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          數據庫安全審計

           用以下的方式可以監控登入登出的用戶:
            創建如下的兩張表:
          create table login_log -- 登入登出信息表
          (
          session_id int not null, -- sessionid
          login_on_time date, -- 登入進間
          login_off_time date, -- 登出時間
          user_in_db varchar2(30), -- 登入的db user
          machine varchar2(20), -- 機器名
          ip_address varchar2(20), -- ip地址
          run_program varchar2(20) -- 以何程序登入
          );
          create table allow_user -- 網域用戶表
          (
          ip_address varchar2(20), -- ip地址
          login_user_name nvarchar2(20) -- 操作者姓名
          );
            創建如下的兩個觸發器:
          create or replace trigger login_on_info -- 記錄登入信息的觸發器
          after logon on database
          Begin
          insert into login_log(session_id,login_on_time,login_off_time,user_in_db,machine,ip_address,run_program)
          select AUDSID,sysdate,null,sys.login_user,machine,SYS_CONTEXT('USERENV','IP_ADDRESS'),program
          from v$session where AUDSID = USERENV('SESSIONID'); --當前SESSION
          END;
          create or replace trigger login_off_info --記錄登出信息的觸發器
          before logoff on database
          Begin
          update login_log set login_off_time = sysdate
          where session_id = USERENV('SESSIONID'); --當前SESSION
          exception
          when others then
          null;
          END;

           方法二:
            用如下的方式可以審記執行drop動作的事件:
          /**
          * drop語句的審計日志表
          */
          create table drop_log
          (
          session_id int not null, -- sessionid
          drop_time date, -- drop的時間
          ip_address varchar2(20), -- ip地址
          object_owner varchar2(30), -- 對象的所有者
          object_name varchar2(30), -- 對象名稱
          object_type varchar2(20), -- 對象類型
          drop_by_user varchar2(30) -- 執行drop語句的用戶
          );
          create or replace trigger drop_info
          after drop on mfg0513user.schema -- 在mfg0513user用戶上創建審記DROP的觸發器
          begin
          insert into drop_log
          (session_id,
          drop_time,
          ip_address,
          object_owner,
          object_name,
          object_type,
          drop_by_user)
          values(USERENV('SESSIONID'),
          sysdate,
          SYS_CONTEXT('USERENV','IP_ADDRESS'),
          sys.dictionary_obj_owner,
          sys.dictionary_obj_name,
          sys.dictionary_obj_type,
          sys.login_user);
          end;

          posted on 2014-07-25 13:22 順其自然EVO 閱讀(528) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2014年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 深州市| 彭泽县| 仲巴县| 绥棱县| 乌什县| 大关县| 文安县| 华安县| 永寿县| 高雄市| 太仓市| 连江县| 赤水市| 玉溪市| 玛沁县| 兴海县| 嘉黎县| 加查县| 屯昌县| 大渡口区| 土默特左旗| 南通市| 文登市| 松阳县| 河东区| 瑞丽市| 肥西县| 大埔区| 山东省| 汽车| 卫辉市| 兴安盟| 古丈县| 赞皇县| 义马市| 福贡县| 芮城县| 宝应县| 湖州市| 延津县| 日照市|