Essa trigger foi criada da necessidade de limitar um determinado usuário de conectar em determinada faixa de horário.
create or replace trigger TRG_LOGON_LIMIT_TIME
after logon on database
begin
if (USER = 'USUARIO_CONEXAO_DO_SISTEMA' and (to_char(sysdate, 'hh24:mi') < '08:00' or to_char(sysdate, 'hh24:mi') > '18:00')) then
RAISE_APPLICATION_ERROR(-20011, '---> Desculpe, acesso ao banco somente das 08:00 as 18:00 <---');
end if;
end;
/
Nesse exemplo, foi limitado o acesso entre 08:00 as 18:00h para o usuário USUARIO_CONEXAO_DO_SISTEMA.
Através desse exemplo é possível adaptar para a realidade de cada ambiente.
--
Marcos Aurélio Braga
OCA - Oracle Database 10g Administrator