Paulo Regra geral de SEGURANÇA: Não dê permissão NENHUMA. Sempre comece a partir do ZERO.
Infelizmente não é o teu caso, pois o sistema já existe, os usuários já existem com atribuições que não deveriam ter. O correto é começar realmente do ZERO e ir dando os grants somente do que é realmente necessário. Como teu caso é mais complicado, pois já está em produção, vc vai ter que tomar essa decisão: vai realmente adotar uma política melhor de segurança? Se a resposta for SIM, vcs terão que fazer esse trabalho conjunto, ou seja, agendar um horário para começar essas alterações, deixar avisado que erros provavelmente ocorrerão, e aí vc terá que ir acertando os grants até que o sistema funcione normalmente. Óbvio que vc não precisa começar literalmente do Zero: analise cada um dos usuários que vc tem na base, verifique os grants "óbvios" que o sistema com certeza necessita, e daí sim crie um ponto de partida. Lembrando que vc não precisa colocar a produção em risco: use um ambiente de testes! 2012/6/27 Paulo Couto <[email protected]> > ** > > > Ederson, estou com um problema, tenho um base oracle que comecei a > gerenciar e percebi vários users com está role, sei que é perigoso, mas > precisava entender melhor antes de remover. > > Meu receio é remover a role e alguém chiar de problema no sistema. > > Será que se o login já tiver os grants de select, insert, update OU for o > owner dos objetos teria algum problema em retirar a role DBA ?? > > Att, > > > ________________________________ > De: ederson2001br <[email protected]> > Para: [email protected] > Enviadas: Quarta-feira, 27 de Junho de 2012 9:37 > Assunto: [oracle_br] Re: duvida role dba > > > > > > Alô Paulo, > > A role DBA tem diversos direitos no banco, veja os principais (não consigo > guardar tudo de cabeça): > > -Gerenciar espaço: pode criar tablespaces, bem como removê-las > -Pode colocar tablespaces em modo apenas-leitura > -Pode mudar a senha de usuários > -Pode bloquear usuários > -Pode criar novos usuários > -Pode dropar (remover) um usuário com todos os seus dados > -Pode alterar dados nas tabelas dos usuários > -Pode manipular objetos dos usuários (criar, remover, alterar) > -Pode visualizar objetos do dicionário de dados, como as views DBA_% > -Pode fazer backup > -Pode restaurar backup > -Pode conceder privilégios de sistema a outros usuários > -Pode remover privilégios de usuários > -Pode criar novos conjuntos de privilégios (create role + grant) > -Pode remover conjuntos de privilégios (drop role) > -Pode gerenciar estatísticas > -Pode gerenciar jobs (tarefas agendadas) > -etc > > Enfim, pode muito mesmo. Já pensou um usuário "curioso" com este poder na > mão? É metralhadora carregada na mão de símios. > > Veja todos os direitos (rodar no SQLPLUS), respondendo DBA à pergunta do > script, depois compare com os direitos de um usuário comum (ex: SCOTT): > > SET echo OFF > SET verify OFF > SET pages 9999 > column granted_role form a25 > column owner form a15 > column table_name form a33 > column privilege form a33 > ACCEPT username prompt 'Enter Username : ' > PROMPT Roles granted to user > SELECT granted_role, > admin_option, > default_role > FROM dba_role_privs > WHERE grantee=UPPER('&username') > ORDER BY 1; > PROMPT Table Privileges granted to a user through roles > SELECT granted_role, > owner, > table_name, > privilege > FROM > ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') > UNION > SELECT granted_role > FROM role_role_privs > WHERE role IN > (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') > ) > ) roles, > dba_tab_privs > WHERE granted_role=grantee > ORDER BY 1,2,3,4; > PROMPT System Privileges assigned to a user through roles > SELECT granted_role, > privilege > FROM > ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') > UNION > SELECT granted_role > FROM role_role_privs > WHERE role IN > (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('&username') > ) > ) roles, > dba_sys_privs > WHERE granted_role=grantee > ORDER BY 1,2; > PROMPT Table privileges assigned directly to a user > SELECT owner, > table_name, > privilege > FROM dba_tab_privs > WHERE grantee=UPPER('&username') > ORDER BY 1,2,3; > PROMPT System privileges assigned directly to a user > SELECT privilege, > admin_option > FROM dba_sys_privs > WHERE grantee=UPPER('&username'); > undefine username; > > Ederson Elias > DBA Oracle > http://br.linkedin.com/pub/ederson-elias/24/8b/8b0 > > --- Em mailto:oracle_br%40yahoogrupos.com.br, Paulo Couto <paulopcto2002@...> > escreveu > > > > > Amigos, desculpem a pergunta meio de iniciante, mas até o momento não > consegui captar o risco e quais permissões um login com a role DBA pode ter > ? Já pesquisei bastante na net mas nunca acho nada que me diga realmente o > que está role é e quais os riscos. > > > > > > Gostaria de vossos comentarios ou material sobre estas permissões no > oracle ( o meu é versão 10 ). > > > > > > Att, > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Att, [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/[email protected]/ -------------------------------------------------------------------------------------------------------------------------- >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: [email protected] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
