科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道数据库安全审计

数据库安全审计

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

用以下的方式可以监控登入登出的用户

作者:51cto 来源:51cto 2008年7月4日

关键字: 数据库安全

  • 评论
  • 分享微博
  • 分享邮件

  用以下的方式可以监控登入登出的用户:

  创建如下的两张表:

  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;

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章