Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Robson Oracle

Trigger de Auditoria de Logon e Logof no 10gXE

Recommended Posts

Olá Pessoal,

 

Eu fiz duas triggers que peguei de um tutorial para poder controlar e saber quem fez logon e logoff no schema de um usuário chamado atendimento. Se eu uso um cliente como o SQLTools por exemplo elas funcionam 100%, o Console também funciona, e grava certo quem foi o usuário que fez o logon e quando peço para desconectar a trigger de logoff é disparada e funciona também. porém se eu uso a interface web Apex ele não dispara as triggers, muito estranho, tanto no logon quando no Logout usando o Apex, alguém sabe uma explicação para esta situação.

 

O que fiz está descrito abaixo para quem puder simular esta situação e me ajudar a achar uma resposta:

 

-- usuário

 

create user atendimento identified "123456";

grant dba to atendimento;

 

-- No usuário atendimento criei a tabela e as triggers

 

CREATE TABLE VIGIA (MARCA VARCHAR(500));

 

CREATE OR REPLACE TRIGGER marca_logon

AFTER LOGON ON SCHEMA

BEGIN

INSERT INTO vigia

VALUES (USER || ' entrou no sistema (conn user/senha) em ' ||

TO_CHAR(sysdate, 'DD-MM-YYYY HH24:MI:SS'));

COMMIT;

END;

 

CREATE OR REPLACE TRIGGER marca_logoff

BEFORE LOGOFF ON schema

BEGIN

INSERT INTO vigia

VALUES (USER || ' saiu do sistema (disconnect) em ' ||

TO_CHAR(sysdate, 'DD-MM-YYYY HH24:MI:SS'));

COMMIT;

END;

/

 

Se o Rodrigo ou outro DBA passou por esta situação e puder ajudar eu agradeço. Senão fico sem entender por que usando o Apex as triggers não são disparadas.

 

Grande abraço a todos e desejo muita sorte e saúde para todos os participantes e mantenedores do fórum

 

Robson

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os dois acessos são feitos pelo mesmo user/owner ?

 

Não sei ao certo o que a instrução <BEFORE LOGOFF ON schema> faz.

 

Este modo de acesso faz pool de conexões ?

 

Pode estar sendo feito apenas uma conexão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Motta,

 

Obrigado pelo retorno e atenção.

 

Por exemplo, agora de manhã, a primeira coisa que fiz depois de ligar o computador, eu entrei no Apex e fiz o Login com o usuário Atendimento e com a senha 123456, e simplesmente e o Oracle não dispara as triggers. Agora se eu usar o SQLTools ele dispara normalmente com o mesmo usuário e senha.

 

Grande abraço

 

Robson

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.