Pular para o conteúdo
  • Este tópico contém 4 respostas, 3 vozes e foi atualizado pela última vez 10 anos, 5 meses atrás por Andre Luiz.
Visualizando 5 posts - 1 até 5 (de 5 do total)
  • Autor
    Posts
  • #107327
    Andre Luiz
    Participante

      Estou criando um Usuario “X” no banco de dados para fazer apenas Select nos dados da tabela, mas mesmo com o Grant para Select, quando conectado com este usuário”X” pelo SqlDeveloper se clicar na opção “Outros Usuarios” e selecionar o Schema principal o novo usuario consegue visualizar todos os objetos.
      Tem como bloquear esta situação?, pois gostaria que ele não tivesse acesso às triggers

      Attachments:
      #107328
      rman
      Participante

        @Andre Luiz

        Logado com o usuário X poste o resultado:


        SELECT *
        FROM USER_ROLE_PRIVS;

        SELECT *
        FROM USER_SYS_PRIVS;

        SELECT *
        FROM USER_TAB_PRIVS;

        #107329
        Fábio Prado
        Participante

          @Andre,

          Eu recomendo que você não se preocupe com isso! Não sei qual é o seu nível de conhecimentos em administração de BD Oracle, mas isso só está ocorrendo pq existe um privilégio de SELECT público na visão ALL_OBJECTS. Se você revogar esse privilégio o usuário não conseguirá mais ver as triggers, porém você poderá ter diversos outros problemas que terão ser tratados individualmente e que poderão inclusive gerar erros nas aplicações existentes, por isso, nem recomendo vc mexer nisso!

          Para ver os privilégios públicos que comentei, execute a consulta abaixo:

          select * from all_tab_privs where GRANTEE = 'PUBLIC' AND TABLE_NAME LIKE 'ALL%';

          []s

          #107330
          Andre Luiz
          Participante

            Este é o resultado do Select

            USERNAME PRIVILEGE ADMIN_OPTION
            VISUALIZAR CREATE SESSION NO

            [quote=”rman” post=32733]@Andre Luiz

            Logado com o usuário X poste o resultado:


            SELECT *
            FROM USER_ROLE_PRIVS;

            SELECT *
            FROM USER_SYS_PRIVS;

            SELECT *
            FROM USER_TAB_PRIVS;
            [/quote]

            #107331
            Andre Luiz
            Participante

              Fabio, tudo bem!

              O objetivo é deixar que o usuário tenha acesso ao banco para gerar relatórios e não ter acesso as triggers, você recomenda alguma outra forma para evitar o acesso/visualização das triggers?

              [quote=”Fábio Prado” post=32734]@Andre,

              Eu recomendo que você não se preocupe com isso! Não sei qual é o seu nível de conhecimentos em administração de BD Oracle, mas isso só está ocorrendo pq existe um privilégio de SELECT público na visão ALL_OBJECTS. Se você revogar esse privilégio o usuário não conseguirá mais ver as triggers, porém você poderá ter diversos outros problemas que terão ser tratados individualmente e que poderão inclusive gerar erros nas aplicações existentes, por isso, nem recomendo vc mexer nisso!

              Para ver os privilégios públicos que comentei, execute a consulta abaixo:

              select * from all_tab_privs where GRANTEE = 'PUBLIC' AND TABLE_NAME LIKE 'ALL%';

              []s[/quote]

            Visualizando 5 posts - 1 até 5 (de 5 do total)
            • Você deve fazer login para responder a este tópico.
            plugins premium WordPress