Re: [oracle_br] Re: Segurança no BD

2012-08-09 Por tôpico Hevandro Veiga
Obrigado pelo retorno Chiappa. Realmente não informei a versão do BD pq
queria iniciar um debate sobre práticas de segurança de BD independente da
versão.
Suas dicas e do Marcus foram muito boas.

Tb criei a minha versão da connect e resource, acho isso importante.
Acho esse debate interessante, pois nunca sabemos tudo e é sempre bom ouvir
opiniões de outros profissionais.
A auditoria Tb vai acontecer inclusive auditando o dba que muita gente
esquece.
Me assusta a forma como as bases era administradas aqui, de qualquer forma
to acertando e ainda tem muito trabalho pela frente.

Só acho que pouca gente entrou na conversa, quem tiver mais idéias
compartilhem por favor.
Em 09/08/2012 14:05, J. Laurindo Chiappa jlchia...@yahoo.com.br
escreveu:

 **


 Bem, vc não cita a Versão do banco(isso é sempre ultra-importante), mas de
 modo geral os seus movimentos iniciais foram bons, sim : remover privs ANY
 e de Administração, bem como os privilégios inerentemente altos (como
 UNLIMITED TABLESPACE) que algumas versões da CONNECT e da RESOURCE davam é
 uma excelente idéia Eu sempre prefiro criar a minha versão da role
 CONNECT e da RESOURCE , customizada, aonde de acordo com a necessidade eu
 tiro ou adiciono grants
 imho a continuação seria algo do gênero :

 a) eliminar as ações ilimitadas - ie, remover coisas do tipo
 UTL_FILE_DIR=* (que permite ler/gravar qquer arquivo, INCLUSIVE os do
 sistema)

 b) rever privilégios de I/O programados (exemplo, DIRECTORIES criados por
 qquer um e que qquer um tem r+w)

 c) rever os privilégios de acesso à dados em produção (principalmente
 usuários que tem leitura de qquer objeto do dicionário de dados - isto nem
 por Segurança (embora Haja SIM questões de segurança, como acessar SQLs
 administrativos no cache que contenham passwords, que recuperem dados
 sigilosos em prod ou coisas do tipo), mas pra evitar que neguinho solte uma
 query pesquisando JOINs de tabelas do dicionários sem chave, e coisas
 assim) Certamente isso vai acabar levando à implementação de algum
 mecanismo de elevamento de programas, ie : ao invés de testar  desenvolver
 direto na produção, e sair enfiando as novas versões sem sequer envolver o
 DBA, vc vai ter um ambiente Desenv, um ambiente HOMO e só depois das novas
 versões totalmente testadas é que o DBA é acionado para elevar o código à
 categoria de Produção, e o Implementar

 d) Auditoria : é vital que não só esteja implementada a política de lesser
 privileges (que vc está tentando implementar acima, okdoc) MAS que também
 as pessoas vejam que as tentativas de violação Vão Ser descobertas e
 preseguidas, aí é que entra a Auditoria...

 e) política de senhas : isso é a Espinha Dorsal de uma política de
 segurança, é Crucial que TODAS as senhas (inclusive as suas de DBA!!!)
 sigam políticas de força de senha rígidas E QUE expirem em intervalos
 curtos E QUE não possam ser reaproveitadas E QUE não estejam armazenadas em
 lugar algum - sim, aquela agenda de papel aonde vc guarda a sua senha de
 SYSDBA não é aceitável Idem para aqueles scripts em crontab que
 conectam com usuário/senha Idem idem (com mais força ainda) para
 aquelas rotinas automatizadas da Aplicação que rodam conectando com um
 usuário e senha específicos...

 f) e finalmente o mais importante porém o mais difícil de implementar : os
 patches que a Oracle disponibiliza (normalmente Quadrimestralmente)
 necessariamente TEM QUE SER aplicados o mais rápido possível - Abundam
 exemplos de correções de bugs de segurança importantes, que deixam um
 usuário em determinadas situações elevar seu próprio privilégio, e/ou
 executar / acessar itens que não lhe pertencem

 []s

 Chiappa


 --- Em oracle_br@yahoogrupos.com.br, Hevandro Veiga hevandro83@...
 escreveu
 
  Felizes são aqueles que participam do projeto do bd desde o início. Nesse
  caso não. To a pouco tempo e herdei de outra administração. Triggers eu
 to
  fugindo. O cenário atual tá péssimo , já comecei os trabalhos em
  homologação p depois partir p produção.
  Em 08/08/2012 21:30, Marcus Pavan marcus_apf@... escreveu:
 
   **
  
  
   Hevandro, boa noite.
  
   Sobre segurança, sua atividade inicial está correta.
   O primeiro passo é o mapeamento geral dos usuários e seus acessos.
 Estes
   por sua vez agrupados em ROLES.
   Outro detalhe importante, esquecido por muitos, é no momento da
 criação do
   banco de dados. Se você for usar SPATIAL instale os pacotes caso
 contrário
   não instale (isto vale para todos - XMLDB, JAVA, INTERMEDIA, etc.).
   Evitando a famosa instalação WINDOWS MODE (NEXTNEXTFINISH).
   Algumas vezes implemento TRIGGERS para um FIREWALL (muito cuidado com
   isto, deixe o usuário SYS, SYSMAN, SYSTEM e DBSNMP passarem batitos),
 pois
   tenho ninjas na empresa que descobrem senha do SCHEMA e manda o
 excel
   torar em tabela dinâmica. Então... IF (v_usuario = 'X' AND v_sistema
 NOT IN
   ('..',)) THEN RAISE_... :)
  
   Atenciosamente,
  
   Marcus Pavan.
  
   

Re: [oracle_br] Re: Segurança no BD

2012-08-09 Por tôpico Hevandro Veiga
Um ponto interessante que vc citou é a senha anotada em papel. Isso leva a
outra questão: onde guardar as senhas?. Só de cabeça é inviável. Hj temos
uma planilha Excel protegida por 2 senhas, uma ro e outra rw. Aí entra
outro problema, e a segurança do Excel, será que é boa? Dá p confiar? Já
trabalhei Tb c um aplicativo password safe e achei bem interessante.
Em 09/08/2012 17:12, J. Laurindo Chiappa jlchia...@yahoo.com.br
escreveu:

 **


 Okdoc, Hevandro : quando citei a versão, era para tentar ajustar mais as
 respostas à sua condição particular, mas sendo uma discussão geral, aí
 realmente os procedimentos gerais citados são suficientes - a implementação
 é que Vai mudar em cada versão, mas como planejamento geral tá bala
 Conforme mais pessoas forem respondendo , mais pontos serão levantados,
 imagino...
 De minha parte, um ponto que quero adicionar é a Segurança no servidor :
 não só a segurança lógica - tal como proteção ao account administrador
 local (se qquer um conseguir acesso á um user membro do grupo Admin local,
 ele se dá inclusão no grupo DBA e aí é game over, a pessoa conecta como
 SYSDBA localmente) e proteção aos arquivos do Oracle (por exemplo, se
 alguém roubar um backup full não-encriptado , ou se alguém conseguir o
 arquivo de password com coisa de uma ou duas horas de esforço se consegue
 ou acessar os dados ou obter a senha do SYSDBA, aí é game over#2) , MAS
 também a segurança física até o servidor, ie, como Dificultar que alguém
 tenha acesso diretamente ao servidor : basta um Live CD e é game over... Há
 pouco tempo eu precisei acessar um servidor (Windows 7 no caso) em que
 ninguém tinha nenhuma senha, aí usei aquele trucão básico de boot com
 LiveCD e alterar um dos executáveis chamados na hora da tela de logon pelo
 executável de troca de senhas e kaput, funfou na hora Então a idéia
 aqui é não esquecer das barreiras no caminho até o servidor, sejam lógicas
 de último caso(por exemplo, uma password para acessar a BIOS, desabilitar o
 boot de CD, etc), sejam lógicas tentando restringir/prevenir acesso remoto,
 sejam mesmo físicas (ie, uma tranca na porta da sala dos servidores), tipo
 isso...

 []s

 Chiappa


 --- Em oracle_br@yahoogrupos.com.br, Hevandro Veiga hevandro83@...
 escreveu
 
  Obrigado pelo retorno Chiappa. Realmente não informei a versão do BD pq
  queria iniciar um debate sobre práticas de segurança de BD independente
 da
  versão.
  Suas dicas e do Marcus foram muito boas.
 
  Tb criei a minha versão da connect e resource, acho isso importante.
  Acho esse debate interessante, pois nunca sabemos tudo e é sempre bom
 ouvir
  opiniões de outros profissionais.
  A auditoria Tb vai acontecer inclusive auditando o dba que muita gente
  esquece.
  Me assusta a forma como as bases era administradas aqui, de qualquer
 forma
  to acertando e ainda tem muito trabalho pela frente.
 
  Só acho que pouca gente entrou na conversa, quem tiver mais idéias
  compartilhem por favor.
  Em 09/08/2012 14:05, J. Laurindo Chiappa jlchiappa@...
  escreveu:
 
   **
  
  
   Bem, vc não cita a Versão do banco(isso é sempre ultra-importante),
 mas de
   modo geral os seus movimentos iniciais foram bons, sim : remover privs
 ANY
   e de Administração, bem como os privilégios inerentemente altos (como
   UNLIMITED TABLESPACE) que algumas versões da CONNECT e da RESOURCE
 davam é
   uma excelente idéia Eu sempre prefiro criar a minha versão da role
   CONNECT e da RESOURCE , customizada, aonde de acordo com a necessidade
 eu
   tiro ou adiciono grants
   imho a continuação seria algo do gênero :
  
   a) eliminar as ações ilimitadas - ie, remover coisas do tipo
   UTL_FILE_DIR=* (que permite ler/gravar qquer arquivo, INCLUSIVE os do
   sistema)
  
   b) rever privilégios de I/O programados (exemplo, DIRECTORIES criados
 por
   qquer um e que qquer um tem r+w)
  
   c) rever os privilégios de acesso à dados em produção (principalmente
   usuários que tem leitura de qquer objeto do dicionário de dados - isto
 nem
   por Segurança (embora Haja SIM questões de segurança, como acessar SQLs
   administrativos no cache que contenham passwords, que recuperem dados
   sigilosos em prod ou coisas do tipo), mas pra evitar que neguinho
 solte uma
   query pesquisando JOINs de tabelas do dicionários sem chave, e coisas
   assim) Certamente isso vai acabar levando à implementação de algum
   mecanismo de elevamento de programas, ie : ao invés de testar 
 desenvolver
   direto na produção, e sair enfiando as novas versões sem sequer
 envolver o
   DBA, vc vai ter um ambiente Desenv, um ambiente HOMO e só depois das
 novas
   versões totalmente testadas é que o DBA é acionado para elevar o
 código à
   categoria de Produção, e o Implementar
  
   d) Auditoria : é vital que não só esteja implementada a política de
 lesser
   privileges (que vc está tentando implementar acima, okdoc) MAS que
 também
   as pessoas vejam que as tentativas de violação Vão Ser descobertas e
   preseguidas, 

Re: [oracle_br] Re: Segurança

2007-06-06 Por tôpico ESTUDO
obrigada colega.
Sou DA, mas faço tudo de DBA, aqui não temos DBA lógico, isso é pra pagar 
menos...
abraços
Cris
  - Original Message - 
  From: jlchiappa 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Monday, June 04, 2007 2:12 PM
  Subject: [oracle_br] Re: Segurança


  OK, isso não estava claro na sua msg original. De qquer forma colega, 
  ainda no espírito de comentar em geral a sua política de segurança 
  antes de responder, eu OBSERVARIA que um DA (data Administrador) por 
  definição NÂO FAZ trabalho de DBA, que é quem mexe dentro do banco, 
  faz upgrades, alterações estruturais de banco... Um DA 
  cria/altera/remove ESTUTURAS DE DADOS e as testa, então imho um 
  usuário que tenha recebido SELECT ANY TABLE, e via procedure (para 
  bloquear acesso ao schema SYS) possa exercer privs de CREATE ANY, 
  ALTER ANY TABLE, ANALYZE ANY, DROP ANY TABLE e similares faria 99.99% 
  do trabalho de um DA, não vejo O MENOR SENTIDO em um usuário desses 
  ter priv de DBA 
  Mas comentando a resposta da pergunta que vc fez, o fato é mesmo o 
  que eu disse : SE vc não executar o plus digitando sqlplus 
  usuario/[EMAIL PROTECTED], e nem ter a senha dentro de scripts e quetais (e 
  sim SEMPRE fazendo sqlplus [EMAIL PROTECTED]), screen readers e colegas 
  pescoçudos não interfeririam, E como disse a senha em si sempre 
  trafega criptografada (se vc seguir o recomendado e a trocar 
  frequentemente ainda que seja capturado o pacote de rede ele estrá 
  criptografado, até poder ser revertido a senha já mudou em tese), 
  então o sqlplus é seguro, sim, a única brecha para segurança (não 
  só de sqlplus, mas da maioria dos programas) seria mesmo keyloggers, 
  que capturem a digitação do seu teclado, pra evitar isso como eu 
  disse só mesmo com anti-spywares, anti-rootkits e verificação de 
  segurança FREQUENTE na sua máquina cliente.

  []s

  Chiappa
  --- Em oracle_br@yahoogrupos.com.br, ESTUDO [EMAIL PROTECTED] 
  escreveu
  
   Oi amigo. Somente um usuário tem role de DBA, é é o que eu eu (DA) 
  uso. Só eu tenho a senha.
   Obrigada
   Cris
   - Original Message - 
   From: jlchiappa 
   To: oracle_br@yahoogrupos.com.br 
   Sent: Saturday, June 02, 2007 8:35 PM
   Subject: [oracle_br] Re: Segurança
   
   
   Bom, primeiro usuário com role de dba , isso ABSOLUTAMENTE,
   TOTALMENTE, não faz sentido ALGUM, isso é um rombo total de 
  segurança,
   se preocupar com captura de senha quando vc tem usuário
   super-privilegiado é algo semelhante a se preocupar com fechadura 
  na
   janela quando a porta da frente tá aberta e escancarada O 
  ponto
   BÁSICO de segurança é que um usuário só vai ter os privilégios **
   mínimos ** que necessita, nunca dar DBA pra ninguém que não seja
   DBA!!! Tem muito desenvolvedor/analista preguiçoso que não quer 
  se
   preocupar em levantar quaise sejam os privs necessários e pede 
  grant
   de DBA, mas pergunta pra mim se no meu banco eles recebem isso :)
   Quanto à senha, sim : sqlplus é uma ferramenta em modo texto,
   portanto TODA e QUALQUER entrada de dados é feita em modo-texto, 
  um
   keylogger as capturaria, sim... Um netlogger não as capturaria em
   plain-text, já que desde a v7 as SENHAS TODAS sempre circulam pela
   rede (entre o cliente e o banco) criptografadas, mas um keylogger
   sim... Mas isso faz parte do procedimento de segurança mais 
  genérico,
   de se ter antispyware e antivírus sempre atualizados na máquina, 
  de
   HAVER um departamento na Empresa preocupado com isso, que
   rotineiramente esteja sempre re-aplicando e revendo políticas de
   segurança... É por aí. 
   
   []s
   
   Chiappa
   --- Em oracle_br@yahoogrupos.com.br, ESTUDO estudo2003@ 
  escreveu
   
então pessoal, pegando esse gatilho.. estive pensando aqui..
Temos um usuário que é o owner, e esse usuário tem a role de 
  dba, é
   com ele que logo no plus pra poder fazer alterações e tudo mais.
Me digam, é seguro logar no plus? Pois a minha senha é 
  alfanumerica
   de 6 caracteres. Algum progama consegue capturar essa senha?
Obrigada

Cris
- Original Message - 
From: Bia Fitzgerald 
To: oracle_br@yahoogrupos.com.br 
Sent: Thursday, May 24, 2007 9:57 AM
Subject: Res: [oracle_br] Segurança


ahhh, sim.. Muito obrigada.
:)

- Mensagem original 
De: Gustavo Venturini de Lima gventurini@
Para: oracle_br@yahoogrupos.com.br
Enviadas: Quarta-feira, 23 de Maio de 2007 18:34:19
Assunto: Re: [oracle_br] Segurança

Na verdade a trigger não fica ligada a ninguém... Ela fica 
  escutando o
banco todo no geral...
Se algo satisfazer a condição da trigger, ela será ativada...
No caso, utilize uma AFTER LOGON ON DATABASE
Parecido com isso:

CREATE OR REPLACE TRIGGER SomenteSistema AFTER LOGON ON DATABASE
BEGIN
.
{suas condições e ações}
.
END;

Em 23/05/07, Bia Fitzgerald dbaemapuros@ yahoo.com. br 
  

Re: [oracle_br] Re: Segurança

2007-06-04 Por tôpico ESTUDO
Oi amigo. Somente um usuário tem role de DBA, é é o que eu eu (DA) uso. Só eu 
tenho a senha.
Obrigada
Cris
  - Original Message - 
  From: jlchiappa 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Saturday, June 02, 2007 8:35 PM
  Subject: [oracle_br] Re: Segurança


  Bom, primeiro usuário com role de dba , isso ABSOLUTAMENTE,
  TOTALMENTE, não faz sentido ALGUM, isso é um rombo total de segurança,
  se preocupar com captura de senha quando vc tem usuário
  super-privilegiado é algo semelhante a se preocupar com fechadura na
  janela quando a porta da frente tá aberta e escancarada O ponto
  BÁSICO de segurança é que um usuário só vai ter os privilégios **
  mínimos ** que necessita, nunca dar DBA pra ninguém que não seja
  DBA!!! Tem muito desenvolvedor/analista preguiçoso que não quer se
  preocupar em levantar quaise sejam os privs necessários e pede grant
  de DBA, mas pergunta pra mim se no meu banco eles recebem isso :)
  Quanto à senha, sim : sqlplus é uma ferramenta em modo texto,
  portanto TODA e QUALQUER entrada de dados é feita em modo-texto, um
  keylogger as capturaria, sim... Um netlogger não as capturaria em
  plain-text, já que desde a v7 as SENHAS TODAS sempre circulam pela
  rede (entre o cliente e o banco) criptografadas, mas um keylogger
  sim... Mas isso faz parte do procedimento de segurança mais genérico,
  de se ter antispyware e antivírus sempre atualizados na máquina, de
  HAVER um departamento na Empresa preocupado com isso, que
  rotineiramente esteja sempre re-aplicando e revendo políticas de
  segurança... É por aí. 

  []s

  Chiappa
  --- Em oracle_br@yahoogrupos.com.br, ESTUDO [EMAIL PROTECTED] escreveu
  
   então pessoal, pegando esse gatilho.. estive pensando aqui..
   Temos um usuário que é o owner, e esse usuário tem a role de dba, é
  com ele que logo no plus pra poder fazer alterações e tudo mais.
   Me digam, é seguro logar no plus? Pois a minha senha é alfanumerica
  de 6 caracteres. Algum progama consegue capturar essa senha?
   Obrigada
   
   Cris
   - Original Message - 
   From: Bia Fitzgerald 
   To: oracle_br@yahoogrupos.com.br 
   Sent: Thursday, May 24, 2007 9:57 AM
   Subject: Res: [oracle_br] Segurança
   
   
   ahhh, sim.. Muito obrigada.
   :)
   
   - Mensagem original 
   De: Gustavo Venturini de Lima [EMAIL PROTECTED]
   Para: oracle_br@yahoogrupos.com.br
   Enviadas: Quarta-feira, 23 de Maio de 2007 18:34:19
   Assunto: Re: [oracle_br] Segurança
   
   Na verdade a trigger não fica ligada a ninguém... Ela fica escutando o
   banco todo no geral...
   Se algo satisfazer a condição da trigger, ela será ativada...
   No caso, utilize uma AFTER LOGON ON DATABASE
   Parecido com isso:
   
   CREATE OR REPLACE TRIGGER SomenteSistema AFTER LOGON ON DATABASE
   BEGIN
   .
   {suas condições e ações}
   .
   END;
   
   Em 23/05/07, Bia Fitzgerald dbaemapuros@ yahoo.com. br escreveu:
   
Oi, Gustavo. Imaginei algo assim. Um job, talvez. Que rode o tempo
inteiro.
Mas uma Trigger ficaria ligada a quem??
Obrigada.
   
- Mensagem original 
De: Gustavo Venturini de Lima [EMAIL PROTECTED] comgventurini%
  40gmail.com

Para: [EMAIL PROTECTED] os.com.br oracle_br%40yahoog
  rupos.com. br
Enviadas: Quarta-feira, 23 de Maio de 2007 16:55:21
Assunto: Re: [oracle_br] Segurança
   
Bia, para o Oracle a conexão será a mesma (independente do método
utilizado).
Porém, podes fazer uma trigger que consulte o campo program da
v$session..
Lá aparecerá o Toad.exe por exemplo, e aí sim vc escolhe para
  desconectar
o
usuário...
Ou então colocar que se for  de NOME_DA_SUA_ APP ele desconecta o
cara...
   
Em 23/05/07, Bia Fitzgerald dbaemapuros@ yahoo.com. br escreveu:

 Olá pessoal...

 Alguém sabe como impedir que um determinado usuário acesse o
  BD via
 aplicativos como sqlplus e TOAD e somente acesse via sistema?
 Obrigada,
 Bia.

  _ _ _ _ __
 Fale com seus amigos de graça com o novo Yahoo! Messenger
 http://br.messenger .yahoo.com/

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



   
[As partes desta mensagem que não continham texto foram removidas]
   
 _ _ _ _ __
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger .yahoo.com/
   
[As partes desta mensagem que não continham texto foram removidas]
   

   
   
   [As partes desta mensagem que não continham texto foram removidas]
   
   __
   Fale com seus amigos de graça com o novo Yahoo! Messenger 
   http://br.messenger.yahoo.com/ 
   
   [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 

RE: [oracle_br] Re: Segurança no sistema ?

2007-05-15 Por tôpico Fernando Paiva
É estou vendo mesmo que é complicado de explicar. Bem! Vou te dizer o
que estou tentando fazer.

Tenho uma tabela chamada usuarios, que é onde vou cadastrar meus
usuários, depois tenho uma outra tabela chamada permissoes, que é onde
eu pretend gravar o nome da tabela o código do usuário juntamente
com suas permissões insert/update/delete/select.
Ex:
Cod.Usuario = 001
tablename | insert | update | delete | select
cliente   |   v|   v|v   |   v
estoque   |   v|   v|f   |   v

Seria + ou - isso. O que naum estou achando uma maneira é fazer com que
as permissões sejam dadas partindo desse principio, onde o codigo
daquele usuario tera as permissoes, entende ?

Talvez vc possa me dar uma outra idéia.

[]'s
Fernando Paiva



Em Ter, 2007-05-15 às 15:04 -0300, FERNANDES Marco A SOFTTEK escreveu:
 Amigo,
 não é nada de espetacular não.
 
 Temos algumas tabelas auxiliares para controlar nome do usuário e
 outros dados, e usamos algumas views do sys
 pra ter os objetos do banco. Daí por diante é tudo código embarcado
 pra dar os grants... o detalhe é que
 temos algumas roles padrões para os usuários comuns do sistema
 (consulta, alteração, acesso) e
 algumas coisas também fazemos por módulos e menus do sistema.
 Ficou um pouco confuso porque foi feito aos poucos e por isso meio
 remendado.
 
 Os acesso mais gerais são controlados por roles, por exemplo, execução
 de procedures do banco.
 Já para os menus e módulos fazemos o controle a nível de usuário, ou
 seja, tem que dar direito
 pra cada transação da tela da aplicação.
 
 A tela básica é sim de cadastro de usuários... nesse cara temos a
 criação do usuário a partir
 de roles básicas (como acesso por exemplo). Temos uma outra tela de
 cadastro de transações
 e uma tela para associação dos dois cadastros. Estas transações podem
 estar ligadas aos
 objetos do banco (tabelas) e aos objetos da aplicação (menus,
 módulos).
 
 Nada muito complexo de fazer e nada muito simples de explicar... risos
 
 Abraço,
 Marco.
 
 
 
 From: oracle_br@yahoogrupos.com.br
 [mailto:[EMAIL PROTECTED] On Behalf Of PUB:
 pythondeveloper
 Sent: terça-feira, 15 de maio de 2007 14:17
 To: oracle_br@yahoogrupos.com.br
 Subject: [oracle_br] Re: Segurança no sistema ?
 
 Opa
 
 Vc pode me dar + ou - a explicação de como fizeram ae ? Tipo, com o
 cadastro de usuários e tals ?
 
 Obrigado
 
 --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%
 40yahoogrupos.com.br , FERNANDES Marco A SOFTTEK
 [EMAIL PROTECTED] escreveu
 
  Amigo,
  aqui nós temos exatamente isso... cada usuário que loga no sistema é
  um usuário de banco e existe uma tela de controle de segurança que
  faz todo o serviço sujo... existe pouca intervenção do DBA e o
 trabalho
  fica mesmo a cargo do Analista de Segurança.
  
  É um precinho meio caro ter isso... mas o controle fica ótimo.
  
  A outra possibilidade que já vi em outros locais é o uso de uma
 tabela
  de controle de usuários e permissões apenas na aplicação (menus,
 botões, etc).
  Mas isso tbém dá um bom trabalho !
  
  Abraço,
  Marco.
  
  
  
  From: oracle_br@yahoogrupos.com.br mailto:oracle_br%
 40yahoogrupos.com.br 
 [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%
 40yahoogrupos.com.br ] On Behalf Of PUB: pythondeveloper
  Sent: terça-feira, 15 de maio de 2007 13:29
  To: oracle_br@yahoogrupos.com.br mailto:oracle_br%
 40yahoogrupos.com.br 
  Subject: [oracle_br] Segurança no sistema ?
  
  
  
  Saudações
  
  Estou precisando criar um sistema, mas estou emperrado na parte de
  segurança do mesmo, estou emperrado em decidir como faze-la.
  
  A pergunta é: Como fazer para criar um mecanismo dinâmico de
  segurança do meu sistema, onde eu possa dar permissões aos usuários
 de
  insert/update/delete/select nas tables, qual a técnica que vocês
 usam ?
  
  Eu pensei em usar usuários do banco, acho que seria a maneira mais
  adequada, mas me vi meio perdido, pois iria precisar criar em minha
  aplicação uma tela para controlar esse esquema.
  
  Alguma sugestão ?
  
  
  
  
  
  
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 
 
 
  



RE: [oracle_br] Re: Segurança no sistema ?

2007-05-15 Por tôpico FERNANDES Marco A SOFTTEK
Fernando,
vc já tentou montar o SQL com os grants e dar um execute immediate ?
 
Deve ter também um pacote DBMS onde vc passe o SQL ou outros argumentos
e o mesmo execute na base os grants.
 
No nosso caso criamos usuários a partir de roles e por isso não temos que
dar os grants diretamente.
 
Abraço,
Marco.



From: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of PUB: 
Fernando Paiva
Sent: terça-feira, 15 de maio de 2007 17:19
To: oracle_br@yahoogrupos.com.br
Subject: RE: [oracle_br] Re: Segurança no sistema ?



É estou vendo mesmo que é complicado de explicar. Bem! Vou te dizer o
que estou tentando fazer.

Tenho uma tabela chamada usuarios, que é onde vou cadastrar meus
usuários, depois tenho uma outra tabela chamada permissoes, que é onde
eu pretend gravar o nome da tabela o código do usuário juntamente
com suas permissões insert/update/delete/select.
Ex:
Cod.Usuario = 001
tablename | insert | update | delete | select
cliente | v | v | v | v
estoque | v | v | f | v

Seria + ou - isso. O que naum estou achando uma maneira é fazer com que
as permissões sejam dadas partindo desse principio, onde o codigo
daquele usuario tera as permissoes, entende ?

Talvez vc possa me dar uma outra idéia.

[]'s
Fernando Paiva

Em Ter, 2007-05-15 às 15:04 -0300, FERNANDES Marco A SOFTTEK escreveu:
 Amigo,
 não é nada de espetacular não.
 
 Temos algumas tabelas auxiliares para controlar nome do usuário e
 outros dados, e usamos algumas views do sys
 pra ter os objetos do banco. Daí por diante é tudo código embarcado
 pra dar os grants... o detalhe é que
 temos algumas roles padrões para os usuários comuns do sistema
 (consulta, alteração, acesso) e
 algumas coisas também fazemos por módulos e menus do sistema.
 Ficou um pouco confuso porque foi feito aos poucos e por isso meio
 remendado.
 
 Os acesso mais gerais são controlados por roles, por exemplo, execução
 de procedures do banco.
 Já para os menus e módulos fazemos o controle a nível de usuário, ou
 seja, tem que dar direito
 pra cada transação da tela da aplicação.
 
 A tela básica é sim de cadastro de usuários... nesse cara temos a
 criação do usuário a partir
 de roles básicas (como acesso por exemplo). Temos uma outra tela de
 cadastro de transações
 e uma tela para associação dos dois cadastros. Estas transações podem
 estar ligadas aos
 objetos do banco (tabelas) e aos objetos da aplicação (menus,
 módulos).
 
 Nada muito complexo de fazer e nada muito simples de explicar... risos
 
 Abraço,
 Marco.
 
 
 
 From: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
 [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
 ] On Behalf Of PUB:
 pythondeveloper
 Sent: terça-feira, 15 de maio de 2007 14:17
 To: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
 Subject: [oracle_br] Re: Segurança no sistema ?
 
 Opa
 
 Vc pode me dar + ou - a explicação de como fizeram ae ? Tipo, com o
 cadastro de usuários e tals ?
 
 Obrigado
 
 --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br  
 mailto:oracle_br%
 40yahoogrupos.com.br , FERNANDES Marco A SOFTTEK
 [EMAIL PROTECTED] escreveu
 
  Amigo,
  aqui nós temos exatamente isso... cada usuário que loga no sistema é
  um usuário de banco e existe uma tela de controle de segurança que
  faz todo o serviço sujo... existe pouca intervenção do DBA e o
 trabalho
  fica mesmo a cargo do Analista de Segurança.
  
  É um precinho meio caro ter isso... mas o controle fica ótimo.
  
  A outra possibilidade que já vi em outros locais é o uso de uma
 tabela
  de controle de usuários e permissões apenas na aplicação (menus,
 botões, etc).
  Mas isso tbém dá um bom trabalho !
  
  Abraço,
  Marco.
  
  
  
  From: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br  
  mailto:oracle_br%
 40yahoogrupos.com.br 
 [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br  
 mailto:oracle_br%
 40yahoogrupos.com.br ] On Behalf Of PUB: pythondeveloper
  Sent: terça-feira, 15 de maio de 2007 13:29
  To: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br  
  mailto:oracle_br%
 40yahoogrupos.com.br 
  Subject: [oracle_br] Segurança no sistema ?
  
  
  
  Saudações
  
  Estou precisando criar um sistema, mas estou emperrado na parte de
  segurança do mesmo, estou emperrado em decidir como faze-la.
  
  A pergunta é: Como fazer para criar um mecanismo dinâmico de
  segurança do meu sistema, onde eu possa dar permissões aos usuários
 de
  insert/update/delete/select nas tables, qual a técnica que vocês
 usam ?
  
  Eu pensei em usar usuários do banco, acho que seria a maneira mais
  adequada, mas me vi meio perdido, pois iria precisar criar em minha
  aplicação uma tela para controlar esse esquema.
  
  Alguma sugestão ?
  
  
  
  
  
  
  [As partes desta mensagem que não continham texto foram removidas