SóProvas


ID
515776
Banca
FCC
Órgão
INFRAERO
Ano
2011
Provas
Disciplina
Banco de Dados
Assuntos

No Oracle/PLSQL, a sintaxe correta para a revogação de privilégios em tabelas é:

Alternativas
Comentários
  • O comando revoke é utilizado para revogar privilégios de um usuário, papel  ou público.

    REVOKE privilegio objeto FROM usuario

    Exemplo:

    REVOKE select any table FROM app_user_one;

    Vai retirar as permissões do usuário app_user_one de fazer select em qualquer tabela do sistema.

    == Se fosse GRANT ==

    Para se criar um usuário:
    CREATE USER app_user IDENTIFIED BY passwd;

    Danto algumas permissões para esse usuário:
    GRANT select, insert, update, delete ON tabela TO app_user;

    Criando um Papel:
    CREATE ROLE papel

    Dando as permissões anteriores para o papel:
    GRANT select, insert, update, delete ON tabela TO papel

    Agora dando as permissões do papel para um usuário (Agora o usuário vai representar esse papel)
    GRANT papel TO usuario_x


     
  • Complementando o comentário para o colega, o comando REVOKE tem duas formas de ser usado:


    1 - Para revogar permissões de todas as tabelas - exibida pelo colega:
            REVOKE privilegio objeto FROM usuario
            Exemplo: REVOKE select any table FROM app_user_one;

    2 - Para revogar permissões de uma tabela específica - que o colega não mostrou e é a forma mais conhecida e cobrada na questão:
           REVOKE privilegio ON objeto FROM usuario        Exemplo: REVOKE select ON table FROM app_user_one;

    Obvio que é a mesma forma, porém utiliza-se o ANY TABLE (Todas as tabelas) ou ON <TABLE> (tabela específica)