考试网 >> IT认证 >> Oracle >> Oracle指导 >> Oracle FAQ 之网络与安全篇

Oracle FAQ 之网络与安全篇

发布时间:2006-06-28 10:02     点击:
分页:上一页  1 2 3 4 5 [6] 7 8  下一页

   INSERT INTO log$information(login_user,login_time,ip_adress,ausid,terminal, 

   osuser,machine,program,sid,serial#) 

   VALUES(ora_login_user,SYSDATE,SYS_CONTEXT (’USERENV’,’IP_ADDRESS’), 

   userenv(’SESSIONID’), 

   mtSession.Terminal,mtSession.Osuser, 

   mtSession.Machine,mtSession.Program, 

   mtSession.Sid,mtSession.Serial#); 

   ELSE 

   --if user don’t exists then return error 

   sp_write_log(’Session Information Error:’||SQLERRM); 

   CLOSE cSession; 

   raise_application_error(-20099,’Login Exception’,FALSE); 

   END IF; 

   CLOSE cSession; 

   EXCEPTION 

   WHEN OTHERS THEN 

   sp_write_log(’Login Trigger Error:’||SQLERRM); 

   END tr_login_record; 

   在以上触发器中需要注意以下几点 

   1、该用户有v_$session与v_$mystat的对象查询权限,可以在sys下对该拥护显式授权。 

   2、sp_write_log原本是一个写日志的过程,可以置换为自己的需要,如null跳过。 

   3、必须在创建该触发器之前创建一个log$information的表记录登录信息。 

   [Q]怎么捕获整个数据库的DDL语句或者是说对象结构变化与修改 

   [A]可以采用DDL触发器,如 

   CREATE OR REPLACE TRIGGER tr_trace_ddl 

   AFTER DDL ON DATABASE 

   DECLARE 

   sql_text ora_name_list_t; 
分页:上一页  1 2 3 4 5 [6] 7 8  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有