Álisson,

Acho que o profile não tem como impedir sessões simultâneas de hosts
diferentes, teria que ser com o gatilho mesmo.
Usuários com privilégios de DBA não são impedidos de logar com a exceção
levantada pelo trigger, e quando acessar gera apenas o erro no alert.log.
Você teria que tentar com um usuário comum.
Na query não é necessária a subquery nas tabelas dual, poderia ser assim:

select count(*)
from v$session
into v_login
where username = SYS_CONTEXT('USERENV','session_user')
and machine   <> SYS_CONTEXT('USERENV','HOST')

Espero ter ajudado.

[]'s

Murilo Lima

Em 20 de maio de 2010 13:00, Marcelo Feliciano
<marcelofelici...@gmail.com>escreveu:

>
>
> se nao me engano no oracle vc seta no profile o user per session
> http://www.experts-exchange.com/Database/Oracle/Q_21229785.html
> nesse link fala alguma coisa
>
> Marcelo Feliciano
> marcelofelici...@gmail.com <marcelofeliciano%40gmail.com>
>
> 2010/5/20 Álisson Zimermann <alissonz...@gmail.com<alissonzima%40gmail.com>
> >
>
>
> >
> >
> > Bom dia...
> >
> > criei a trigger:
> >
> > CREATE OR REPLACE TRIGGER LOGIN
> > AFTER LOGON ON DATABASE
> > declare
> > v_login INTEGER;
> > begin
> > select count(*)
> > into v_login
> > from v$session where username = (select
> > SYS_CONTEXT('USERENV','session_user') from dual) and machine <> (select
> > SYS_CONTEXT('USERENV','HOST') host from dual);
> > if (v_login > 0)
> > THEN RAISE_APPLICATION_ERROR
> > (-20010,'You cant access the database!');
> > end if;
> > end;
> > /
> >
> > Eu executei ela e compilou sem erros.. porém não funciona hauhaua..
> >
> > no caso eu faço akele select normal, e ele dá o valor (se há outro
> usuário
> > logado com o mesmo nome, mas pc diferente, ele geralmente dá 1 ou 2 de
> > retorno)...
> > porém parece que o if da trigger nao tá legal, pois quando eu boto o
> mesmo
> > usuário em pcs diferentes ele não dá erro nenhum =(...
> >
> > alguem tem alguma ideia?
> >
> > Álisson
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

--------------------------------------------------------------------------------------------------------------------------
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  
------------------------------------------------------------------------------------------------------------------------
 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a