Eu nunca fiz, mas ** imagino ** que vc possa sim pegar o texto do SQL (mais 
ou menos cfrme mostrado, para usos diferentes, com limitações,  mas enfim, é 
possível, em 
http://blog.contractoracle.com/2009/07/audit-ddl-with-before-ddl-trigger.html , 
http://psoug.org/reference/ddl_trigger.html e 
http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:267415465220#1709240900346291267
 , entre outros) e ver se a tua profile x está presente dentro do CREATE USER, 
sim...
 Mas eu questionaria se esse é o melhor meio : Logicamente, já que o privilégio 
de Criação de usuário é restrito a poucos, muito provavelmente se poderia 
simplesmente REVOKAR o privilégio de criação de usuários dos não-DBAs, 
implantar uma norma para as poucas pessoas capazes de criar usuários que 
Obrigatoriamente tem que usar a procedure CRIA_USUARIO que vc vai 
escrever,sendo que aí a própria procedure sempre impede de criar com usuário 
default, E vc só dá o privilégio de EXECUTE na procedure pras poucas pessoas 
que podem querer criar usuários.... Este método de não dar o privilégio 
diretamente mas sim dar EXECUTE numa subrotina sua que faz as verificações 
necessárias todas (e auditoria, se preciso) via de regra não implica na lógica 
mais complexa, nem nos efeitos colaterais, que uma trigger impõe...

 []s

  Chiappa


--- Em oracle_br@yahoogrupos.com.br, Evandro Giachetto <evandrogiachetto@...> 
escreveu
>
> Pessoal, gostaria de saber se alguém já fez algo parecido:
> 
> Gostaria de criar um trigger de DDL para checar o Profile no qual um user
> está sendo criado e evitar que o profile Default seja associado.
> 
> Neste banco em específico existem profiles criados para usuários de
> aplicaçao e usuários normais e há uma regra na empresa na qual um usuário
> NUNCA deve ser criado com o profile default.
> 
> Então, gostaria de saber se alguém já criou um trigger que verifique se o
> usuário está sendo criado no profile default e, caso positivo, mude o
> comando para o profile de usuário.
> 
> 
> Essa é uma tática para evitarmos que o usuário seja criado com o profile
> Default.
> 
> Agradeço qualquer ajuda.
> 
> Atenciosamente.
> 
> 
> Evandro Giachetto
> Oracle DBA
> evandrogiachetto@...
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>


Responder a