`

用Trigger实现的Logon/Logoff Audit

SQL 
阅读更多

1. 创建存储Audit信息的表:


CREATE TABLE logonaudittable
(
  event       VARCHAR2(10),
  sid         NUMBER,
  serial#     NUMBER,
  timestamp   DATE,
  username    VARCHAR2(30),
  osuserid    VARCHAR2(30),
  machinename VARCHAR2(64)
)
/

2. 创建logon trigger:

CREATE OR REPLACE TRIGGER logonauditing AFTER LOGON ON database
DECLARE
  machinename VARCHAR2(64);
  osuserid    VARCHAR2(30);
  v_sid       NUMBER(10);
  v_serial    NUMBER(10);
 
  CURSOR c1 IS
    SELECT sid, serial#, osuser, machine
      FROM v$session WHERE audsid = userenv('sessionid');
BEGIN
  OPEN c1;
  FETCH c1 INTO v_sid, v_serial, osuserid, machinename;

  INSERT INTO logonaudittable VALUES ( 'LOGON', v_sid, v_serial, sysdate,
      user, osuserid, machinename );

  CLOSE c1;
END;
/

3. 创建LOGOFF Trigger:

CREATE OR REPLACE TRIGGER logoffauditing
BEFORE LOGOFF ON database
DECLARE
  machinename VARCHAR2(64);
  osuserid    VARCHAR2(30);
  v_sid       NUMBER(10);
  v_serial    NUMBER(10);
 
  CURSOR c1 IS
    SELECT sid, serial#, osuser, machine
      FROM v$session WHERE audsid = userenv('sessionid');
BEGIN
  OPEN c1;
  FETCH c1 INTO v_sid, v_serial, osuserid, machinename;

  INSERT INTO logonaudittable VALUES ( 'LOGOFF', v_sid, v_serial, sysdate,
    user, osuserid, machinename );

  CLOSE c1;
END;
/


查询结果:
~~~~~~

SQL> select event, sid, serial#, username, osuserid, to_char(timestamp,'dd-mon-yyyy hh24:mi:ss') as TIMESTAMP, machinename
from logonaudittable;

分享到:
评论

相关推荐

    域组策略的说明

    与Win2000用户登录/注销脚本 (logon/logoff scrīpts)相比,它们之间的主要区别是:计算机启动/关机脚本在计算机启动和关机时运行,脚本程序只运行一次,通常在启动脚本运行完毕后才出现邀请用户登录的对话框;...

    可以触发系统触发器的Oracle系统事件主要包括五大类

    根据描述,触发系统触发器的主要Oracle系统事件包括五类:Startup/Shutdown、ServerError、Logon/Logoff、DDL和DML。 1. **Startup/Shutdown**: - **Startup**: 当数据库实例启动后触发,通常用于初始化或设置...

    fix协议logon实现

    fix协议实现 logon消息 heart beat消息 ,验证了test request。

    sap 的Logon的几个参数

    "SAP Logon参数详解" SAP Logon参数是SAP系统中用于控制用户登录的参数,包括密码检查、多重登录、错误登录、SSO登录票据等。下面将详细介绍SAP Logon参数的每个方面。 一、密码检查参数 密码检查参数是用于定义...

    W10 BG Logon Changer

    使用W10 BG Logon Changer时,你需要准备一张想要设置为登录背景的图片,确保图片的分辨率与Windows 10登录屏幕相匹配,以达到最佳视觉效果。软件可能支持多种图片格式,如.jpg、.png等,但具体支持格式需参考软件的...

    无忧登录51logon

    无忧登录51logon无忧登录51logon无忧登录51logon

    HP小型机的信息的命令集

    9. **LOGON/LOGOFF** 命令:控制用户登录和注销,LOGON用于登录,LOGOFF用于退出当前会话。 10. **BACKUP/RESTORE** 命令:进行数据备份和恢复操作,对系统的稳定运行至关重要。 11. **HELP** 命令:当你忘记命令...

    saplogon软件

    saplogon软件

    oracle安全审计之登录登出、ddl操作记录触发器

    BEFORE LOGOFF ON DATABASE BEGIN INSERT INTO audit_log (event_time, user_name) VALUES (SYSDATE, USER); END; / ``` 接下来,我们讨论DDL操作记录触发器。DDL操作包括创建(CREATE)、删除(DROP)、修改...

    struts_demo(logon)

    总结来说,"struts_demo(logon)"是一个使用Struts框架实现的登录功能的Java Web应用示例,可能还涉及Groovy的使用。它展示了如何处理用户输入、执行业务逻辑和控制应用程序流程。项目中可能包括了相关的PPT演示文稿...

    java和.net代码实现SAP单点登录.pdf

    本文档提供了使用Java和.NET语言实现SAP单点登录的代码示例。 SAP Logon Ticket Verification是SAP系统中的一种身份验证机制,通过验证用户的Logon Ticket来确保用户的身份。Logon Ticket是SAP系统颁发给用户的唯一...

    SAP安装包 GUI750 FOR 苹果MAC客户端GUI SAP LOGON.rar

    4. "苹果MAC系统上安装SAP客户端GUI LOGON并配置登陆使用说明for Java Platin MacOSX.pdf" 是详细的安装和配置指南,涵盖了如何在Mac上安装SAPGUI以及设置SAP LOGON连接的步骤。 5. "GUI_for_mac_750_0-80002494" 很...

    Customer_Remote_Logon_Depot_Help.pdf

    根据提供的文件内容,我们可以了解到关于SAP OSS login的几个关键知识点,这些内容集中于Customer Remote Logon Depot(以前称为Secure Area)的应用及其主要功能。以下是详细的知识点: 1. Customer Remote Logon ...

    第9章 触发器.ppt

    数据库事件触发器则响应诸如STARTUP、SHUTDOWN、LOGON、LOGOFF以及SERVERERROR等特定数据库状态变化或操作。 9.2 DML触发器 DML触发器进一步细分为BEFORE和AFTER两种类型,以及语句级和行级触发器。BEFORE触发器在...

    PLSQL编程(触发器).docx

    5. **系统触发器**:除了DML触发器,还有系统触发器,如`logon_trigger`和`logoff_trigger`,它们在用户登录和登出数据库时触发。`logon_trigger`在用户成功登录后插入一条记录到`log_event`表,记录登录时间和...

    SAP Logon登录条目无法修改_具体操作法.docx

    - 使用这个变量作为路径的一部分可以确保`saplogon.ini` 文件被放置在每个用户的个人文件夹内,这样每个用户都可以拥有独立的配置文件,不会互相干扰。 **注意事项**: - 确保在执行以上步骤前,备份原有的`sap...

Global site tag (gtag.js) - Google Analytics