教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> Oracle >> 安装配置 >> Logon Trigger Example 登陆例子 RSS订阅
Logon Trigger Example 登陆例子
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   

  EXAMPLE 1)

  有时候我们不希望使用者利用ODBC来连接上资料库,利用ACCESS或者EXCEL来抓资料库资料。在道德劝说无效下,就直接挡下来!

  BEGIN
  FOR rec in (select username,program,SYS_CONTEXT('USERENV','IP_ADDRESS') ip from v$session
  where audsid = userenv('sessionid')) loop
  IF rec.IP = ?。16.64.19' AND rec.USERNAME = 'HR' AND upper(rec.program) in
  ('MSACCESS.EXE','SQLPLUSW.EXE','JREW.EXE','MSEXCEL.EXE')
  THEN
  EXIT;
  ELSIF upper(rec.program) in ('MSACCESS.EXE','SQLPLUSW.EXE','JREW.EXE','MSEXCEL.EXE') THEN
  raise_application_error(-20001,'Access Deny');
  END IF;
  END LOOP;
  END;

  只有HR并且由指定的IP 172.16.64.19才能使用ACCESS或者SQL*PLUS或者EXCEL连上来,其他的使用者皆无法连线。

  但是,拥有DBA OR SYSDBA ROLE的权限帐号,是不会受到此限制。

  EXAMPLE 2)

  很多时候我们需要写一个logon trigger来进行帐号登入的控管。在Three - tier 架构下,大部分的程式可能都是由一个固定的帐号,授与适当的权限经由AP Server连接到后端的Oracle资料库来进行一般操作, 这个帐号的权限可能很大,而你并不希望programer利用这个帐号进入资料库做一些测试动作,因为这样就达不到有效权限控管的要求。可是这个AP专用的帐号及密码可能是半公开的,你如何防止这样的情况发生呢? 写一个logon trigger 也许是不错的主意。

  CREATE OR REPLACE TRIGGER LOGON_DB_TRIGGER
  AFTER LOGON ON DATABASE
  DECLARE
  IP VARCHAR2(30);
  UNAME VARCHAR2(30);
  BEGIN
  SELECT SYS_CONTEXT ('USERENV','IP_ADDRESS'),USERNAME INTO IP,UNAME FROM V$SESSION
  WHERE AUDSID=USERENV('SESSIONID');
  IF IP != ?。16.64.33' AND
  UNAME = 'APPLE' THEN
  RAISE_APPLICATION_ERROR(-1,'CONNECTIION REFUSED');
  END IF;
  END;

  写好这个Trigger,只要使用者帐号为apple,且来源IP不是172.16.64.33都会被拒绝连线掉喔!!这样是不是多了些安全管控呢?特别注意一点,如果欲受限制的帐号权限为DBA or SYSDBA者,将不受此Trigger管制。

来源:upschool.com.cn
作者:
关键字:Logon,Trigger,Example,登陆例子
发表日期:2007-1-5 23:35:43

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:Oracle-MTS经过防火墙的设定   下一篇:Oracle-借用使用者的帐号


2008-12-3 5:50:09
本文的相类似文章
  • 一个关于DATEBASE TRIGGER的问题解析
  • Logon Trigger Example 登陆例子
  • Logon Trigger Example 登陆例子
  • RANKfunction-AnExample
  • CallingJavaStoredProceduresfromTriggers
  • 老外编的程序(七):Timed Thread Example
  • XML Examples-from w3schools.com
  • 转阿土伯找到的文章:C# Coding Examples
  • index server example
  • 列出数据库内所有的Trigger,Store Procedure
  • 在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com