Noções básicas de Privilégios de Objeto e Gestão no Oracle 12c

Decidir quem privilégios para bancos de dados é algo que cada administrador de banco de dados (DBA) tem de determinar. Um tipo de privilégio no Oracle 12c é oprivilégios bject

que controla o acesso aos dados e modificação.

Noções básicas de privilégios de objeto no Oracle 12c

Você pode conceder apenas oito privilégios de objeto:

  • SELECIONAR permite que o destinatário selecionar linhas de tabelas

  • INSERIR permite que o destinatário inserir linhas em tabelas.

  • ATUALIZAR permite destinatário alterar linhas existentes nas tabelas.

  • EXCLUIR permite que o destinatário remover linhas existentes a partir de tabelas.

  • REFERÊNCIAS permite que um usuário crie uma exibição na, ou uma chave estrangeira para, mesa de outro usuário.

  • ÍNDICE permite que um usuário criar um índice na tabela de outro usuário.

  • ALTERAR permite uma mudança de usuário ou adicionar à estrutura da tabela de outro usuário.

  • EXECUTAR permite que os procedimentos de destinatários executar de propriedade de outro usuário.

Manter estes boatos de privilégio em mente:

  • Quando você possui um objeto, você tem automaticamente todos os privilégios sobre esse objeto. Em outras palavras, você não tem que ser concedida SELECT na sua própria mesa.

  • privilégios de objeto não pode ser revogada a partir do proprietário de um objeto.

  • Seja qual for o esquema possui o objeto em última análise, controla privilégios que objeto.

  • Sem a permissão expressa, ninguém mais pode gerenciar os privilégios de objeto do referido objeto - bem, ninguém, exceto um usuário que pode ter a GRANT privilégio de sistema QUALQUER OBJETO (geralmente reservado para DBAs).

  • privilégio de objeto não pode ser revogada por qualquer pessoa, mas a pessoa que concedeu ele, exceto para alguém com a concessão de qualquer privilégio de objeto. Nem mesmo o proprietário pode revogar um privilégio em seu próprio objeto, a menos que ela era a concedente.

Como gerenciar privilégios de objeto no Oracle 12c

Nas etapas seguintes, os usuários MAGGIE, Jason, e Matt trabalhar em um banco de dados que contém receitas. Este exemplo usa privilégios de objeto, que lhes permitam visualizar e adicionar mais receitas.

  1. Maggie faz login.

  2. tipos Maggie as seguintes:

    Isso permite que usuário MAGGIE permitir JASON para selecionar a partir de sua mesa de VEGETARIAN_RECIPES. Ela vê isso:

Grant conseguiu.

Semelhante ao COM OPÇÃO ADMIN de privilégios de sistema, privilégios de objeto têm algo chamado COM OPÇÃO GRANT.

  • MAGGIE pode permitir JASON para ser capaz de inserir em sua mesa e permitir que JASON repassar esse privilégio:

  • JASON pode passar sobre esse privilégio INSERT para MATT:

  • Maggie não pode revogar o privilégio de INSERT de Matt. Ela tem que perguntar JASON a fazê-lo.

  • Se JASON se recusa a revogar os privilégios de inserção para MATT, Maggie pode revogar o privilégio de Jason e, por sua vez, revogá-la de Matt. É chamado de Revogar em cascata. Note que isto é diferente de privilégios de sistema.

  • MAGGIE pode revogar o privilégio de INSERT de Jason e, entretanto automaticamente revogá-las de Matt:

    Ela vê isso:

    Revogar sucedido.

Se um usuário quiser ver o privilégio de objeto que têm dado para fora, ela pode consultar o USER_TAB_PRIVS vista.

Por exemplo, Maggie pode ver o que privilégios JASON deixou em seus objetos:

Ela vê algo como isto:

GRANTEE PROPRIETÁRIO TABLE_NAME GRANTOR PRIVILÉGIO ---------- ---------- ------------------ ------- --- ---------- JASON MAGGIE VEGETARIAN_RECIPES MAGGIE SELECIONAR

menu