Amigo, acredito que o que você cita seja isso aqui:
CREATE OR REPLACE TRIGGER SYS.BLOCK_USER_TOOLS AFTER LOGON ON DATABASE DECLARE v_prog sys.v_$session.program%TYPE; owner sys.v_$session.username%TYPE; v_osuser sys.v_$session.osuser%TYPE; BEGIN SELECT program, username, osuser INTO v_prog, owner, v_osuser FROM sys.v_$session WHERE sid = USERENV('SID') AND audsid != 0 -- Não verifica conexões do SYS AND rownum = 1; -- Parallel processes will have the same AUDSID's IF UPPER(owner) NOT IN ('ANONYMOUS','AURORA$JIS$UTILITY$','AURORA$ORB$UNAUTHENTICATED','DBSNMP','DI P','DMSYS','EXFSYS','LMS','MDDATA','MDSYS','MGMT_VIEW','OPERADOR','ORDPLUGIN S','ORDSYS','OSE$HTTP$ADMIN','OUTLN','SI_INFORMTN_SCHEMA',,'SYS','SYSMAN','S YSTEM','TRACESVR','TSMSYS','WKPROXY','WMSYS','XDB') THEN IF (UPPER(v_prog) LIKE '%TOAD%' OR UPPER(v_prog) LIKE '%T.O.A.D%' OR -- Toad UPPER(v_prog) LIKE '%SQLNAV%' OR -- SQL Navigator UPPER(v_prog) LIKE '%PLSQLDEV%' OR -- PLSQL Developer UPPER(v_prog) LIKE '%BUSOBJ%' OR -- Business Objects UPPER(v_prog) LIKE '%EXCEL%' OR -- MS-Excel plug-in UPPER(v_prog) LIKE '%SQLPLUS%' OR -- SQLPLUS UPPER(v_prog) LIKE '%DEVELOPER%' OR -- Oracle SQL Developer UPPER(v_prog) LIKE '%IFBLD%' OR -- Oracle Forms Developer Builder UPPER(v_prog) LIKE '%FRMBLD%' OR -- Oracle Forms Developer Builder UPPER(v_prog) LIKE '%RAPTOR%') -- Oracle Raptor THEN RAISE_APPLICATION_ERROR(-20000, 'A ferramenta de acesso não é permitida para este usuário! ('||v_osuser||' - '||owner||' - '||v_prog||')'); END IF; END IF; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END; / Lembrando que não existe forma 100% efetiva de bloquear nesses casos. Se o usuário renomear o arquivo executável, ele conseguirá acessar o banco de dados... Abraços, Marcus Vinicius Miguel Pedro OCP Database 9i OCP Database 10g OCE RAC 10g De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em nome de candiurudba Enviada em: terça-feira, 19 de maio de 2009 11:16 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: Trigger para bloqueio de Acesso com PL/SQL ou SQL PLUS fiz alguns testes por aqui e realmente funciona...mas para tada instancia...s eue quiser restringir esta trigger somente para alguns schemas...pois este é o meu problema... Na minha instancia, existem alguns schemas que permitem o uso dos DEVELOPER´S e outros esquemas não. continuarei estudando por aqui mas se algum tiver mais alguma luz..agradeceria.. --- Em oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> , "candiurudba" <candiuru...@...> escreveu > > dei uma olhadinha e estav show de bola...acho que é isto mesmo.. > > só uma dúvida, ela é para ser implementada no usuário especifico ou no Sys..fiquei na dúvida devido o select que esta sendo feito na v_$mystat que só é acessada por este cara... > > --- Em oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> , Duilio Bruniera Junior <bruniera@> escreveu > > > > E ai brow ..... > > não sei se essa é a mesma trigger que voce ta falando , mais acho que pode > > resolver o seu problema da uma olhada. > > <begin>---------------------------------------------------------- > > create or replace trigger on_logon > > after logon on database > > declare > > v_sid number; > > v_isdba varchar2(10); > > v_program varchar2(30); > > begin > > execute immediate 'select distinct sid from sys.v_$mystat' > > into v_sid; > > execute immediate 'select program from sys.v_$session where sid = :b1' > > into v_program > > using v_sid; > > select sys_context('userenv', 'ISDBA') into v_isdba from dual; > > if upper(v_program) = 'PLSQLDEV.EXE' and v_isdba = 'FALSE' then -- o > > nome do programa tem que ser em maiusculo. > > raise_application_error(-20001,'A Ferramenta PL/SQL Developer é limitada > > apenas aos DBA'||chr(39)||'s',true); > > end if; > > end; > > / > > <end>---------------------------------------------------------- > > > > 2009/5/19 candiurudba <candiurudba@> > > > > > > > > > > > Bom dia coelgas, tudo bom ? > > > > > > Vi ha algum tempo atras em um forum, uma trigger que bloqueava acessos de > > > usuário que estivessem se conectando com SQL PLUS ou PLSQL DEVELOPR por > > > exemplo mas não me recordo com a mesma tinha sido desenvolvida... > > > > > > A ideia era bloquear acessos a determinados esquemas com a utilização de > > > aplicação de desenvolvimento (SQL PLUS, PL/SQL DEVELOPER. ORACLE SQL > > > SEVELOPER, TOAD E ETC). > > > > > > Minha ideia seria uma trigger que seria aplicada em um determinado usuário > > > e, após o logon do mesmo, estes aplicativos fossem bloqueados. > > > > > > Alguem teria alguma luz sobre este assunto ? è justamente para evitar > > > acessos indesejados na base de dados... > > > > > > abraços > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas]