day12_B2B用户禁止PLSQL登录

select uo.object_name from user_objects uo where uo.object_type ='TRIGGER';





set long 9999999

select dbms_metadata.get_ddl('TRIGGER','DENY_TOOLS_LOGON','SYS') from dual;









LOGON_DENIED_TO_ALERT
TRG_WORK_LOG




CREATE OR REPLACE TRIGGER DENY_TOOLS_LOGON
      AFTER LOGON ON DATABASE
 DECLARE

   my_forced_exception EXCEPTION;
   PRAGMA EXCEPTION_INIT(MY_FORCED_EXCEPTION, -20101);
 BEGIN
   IF (sys_context('USERENV', 'SESSION_USER') IN ('B2B','YHSHOP','XWLM','SCOTT'))
    THEN
     IF ( UPPER(sys_context('USERENV', 'MODULE')) LIKE '%TOAD%' OR 
        UPPER(sys_context('USERENV', 'MODULE')) LIKE '%PLSQLDEV%') 
      THEN
       RAISE my_forced_exception;
     END IF;
   END IF;
 EXCEPTION
   WHEN my_forced_exception THEN
     RAISE_APPLICATION_ERROR(-20101,'你呀傻B,不让你使用第三方工具登录,你没记性!');
   WHEN OTHERS THEN
     null;
 END;
/












原文地址:https://www.cnblogs.com/xiaoxiao5ya/p/6eb30abec5b3fbd99afa5bf472ba85ab.html