Mas eu pensei em dar os grants por SESSAO e nao PERMANENTEMENTE para o 
usuário...
Até pq se o infeliz fechar a aplicação essas permissões vao ficar para o 
usuário..

Como eu faço para que o próprio usuário dê direito de grant em uma role 
para ele permanentemente?

Thiago.

Ederson escreveu:

> Neste ponto vc pode abstrair que se a conexão do Reports é com o mesmo
> usuário que se conectou no Forms, ele já possui as roles habilitadas, 
> então:
> NO PROBLEM !
>
>
> Ederson Elias de Oliveira
> DBA Oracle
> Setransp - Goiânia-GO
> -------------------------------------------------------------------
>
> -----Mensagem original-----
> De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em
> nome de Thiago Lazzarotto
> Enviada em: sexta-feira, 31 de março de 2006 16:04
> Para: oracle_br@yahoogrupos.com.br
> Assunto: Re: [oracle_br] RES: Estratégia de segurança
>
> Ok, solução interessante, mas como eu faço com os reports?
> Em cada report aberto eu tenho que fazer essa assinatura? Isso pq o
> report abre outra conexão no banco...
>
> Ederson escreveu:
>
> > Thiago,
> >
> > Estou trabalhando em uma empresa que já tinha política de segurança, 
> onde
> > algumas coisas ainda precisam ser melhoradas, mas coloco aqui o 
> modelo prá
> > vc avaliar:
> >
> > - Cada usuário tem um user no banco, direito de 
> connect/create_session(sem
> > resource)
> > - os usuários são criados pela aplicação (uma senha restrita que tem
> > direito
> > de create user), que criptografa a senha do usuário e informa ao 
> oracle a
> > senha criptografada. Assim, se o usuário colocou a senha "b5128", 
> ela será
> > informada ao banco (por exemplo) "gg¨^*(" sempre entrando caracteres
> > especiais não printáveis, para dificultar a digitação. Assim, o
> > usuário não
> > sabe a senha dele, jamais poderá se conectar com o SqlPlus, nem com o
> > PLSqlDeveloper, etc...
> > - quando o usuário carrega a aplicação, abre-se uma tela pedindo 
> usuário e
> > senha. O usuário informa (por exemplo) joao/b5128, a aplicação
> > criptografa a
> > senha informada e passa ao banco um "connect joao/[EMAIL PROTECTED]" e o 
> > banco
> > aceita a conexão ou a recusa, se os dados informados estiverem errados.
> > - existe o owner dos dados, e a senha deste é de conhecimento 
> restrito ao
> > DBA e (em documento) do gerente da área.
> > - para os objetos do owner, foi criado um sinônimo público (calma!)
> > - foi criado roles de privilégios, separando por categoria de usuários.
> > - Para estas roles, cada uma tem direitos nos objetos do owner de
> > acordo com
> > o que se precisa utilizar dele
> > - aos usuários, é dado o grant da role que ele precisa para usar o
> > sistema.
> > - Do lado do sistema, existe um controle de permissão que INIBE o
> > menu/opção_de_menu que aquele usuário não terá acesso. Então, só 
> liberar a
> > opção do menu NÃO libera consulta nos dados e liberar só a role de
> > direitos
> > não libera a opção no menu.
> >
> > Teste de segurança:
> >
> > - Se abrir um SqlPlus e digitar: joao/[EMAIL PROTECTED] vai dar "invalid
> > username/password"
> > - caso a rede seja invadida e alguém "snifou" e conseguiu separar um
> > pacote
> > que continha o connect, ele conseguirá se conectar ao SqlPlus, com 
> alguma
> > dificuldade, mas ao fazer o select * from cat; não virá nenhum objeto,
> > pois
> > o usuário não possui nenhum.
> > - caso o invasor conheça a view ALL_OBJECTS, aí já será um problema 
> a ser
> > barrado pelas roles.
> > - existe um recurso que "recusa" conexões do SqlPlus de um usuário,
> > isto tb
> > pode ser usado para melhorar a segurança.
> >
> >
> > Uma sugestão (Utópica, possível implementar):
> > - não dar o grant das roles ao usuário:
> > - no momento da conexão, uma trigger database é disparada e insere uma
> > linha
> > em uma tabela do owner dos dados, informando também uma assinatura da
> > conexão em MODULE (informada à V$session via dbms.application_info)
> > - aquela tabela possui uma trigger que executa uma procedure que
> > verifica se
> > aquela assinatura é da aplicação e se for, dá o grant  das roles daquele
> > usuário (lendo em uma tabela). Caso a conexão seja por ferramentas de
> > terceiros, não será "assinado" a conexão e a procedure não dará os
> > direitos
> > das roles para o usuário conectado. Então o cara está conectado, vê 
> o nome
> > das tabelas em ALL_OBJECTS mas não consegue fazer select, nem 
> update, nem
> > insert, nem delete em nenhuma daquelas tabelas ...
> >
> > Que tal ??
> >
> >
> > Ederson Elias de Oliveira
> > DBA Oracle
> > Setransp - Goiânia-GO
> > -------------------------------------------------------------------
>
>
>
> --------------------------------------------------------------------------------------------------------------------------
> Atenção! As mensagens deste grupo são de acesso público e de inteira 
> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --------------------------------------------------------------------------------------------------------------------------__________________________________________________________________
>
> Este Grupo recebe o apoio da SQL Magazine - 
> www.devmedia.com.br/sqlmagazine
> __________________________________________________________________
> O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, 
> tenha o link do mesmo para evitar trafego(pedidos) desnecessário.
>
>
> ------------------------------------------------------------------------
> *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:
>       [EMAIL PROTECTED]
>       <mailto:[EMAIL PROTECTED]>
>        
>     * O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
>       Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
>
>

-- 



--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__________________________________________________________________
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
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:
    [EMAIL PROTECTED]

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

 



Responder a