Como sempre, comece conectando-se ao seu servidor onde o Oracle está hospedado e, em seguida, conecte-se ao próprio Oracle como
SYSTEM
conta. O
SYSTEM
account é uma das poucas contas administrativas predefinidas geradas automaticamente quando o Oracle é instalado. SYSTEM
é capaz da maioria das tarefas administrativas, mas a tarefa em que estamos particularmente interessados é o gerenciamento de contas. Criando um usuário
Uma vez conectado como
SYSTEM
, basta emitir o comando CREATE USER
comando para gerar uma nova conta. CREATE USER books_admin IDENTIFIED BY MyPassword;
Aqui estamos simplesmente criando um
books_admin
conta IDENTIFIED
ou autenticado pela password
especificada . A Declaração de Concessão
Com nosso novo
books_admin
conta criada, agora podemos começar a adicionar privilégios à conta usando o GRANT
demonstração. GRANT
é uma declaração muito poderosa com muitas opções possíveis, mas a funcionalidade principal é gerenciar os privilégios de ambos os users
e roles
em todo o banco de dados. Fornecendo funções
Normalmente, você deve primeiro atribuir privilégios ao usuário anexando a conta a várias funções, começando com o
CONNECT
Função:GRANT CONNECT TO books_admin;
Em alguns casos, para criar um usuário mais poderoso, você também pode considerar adicionar o
RESOURCE
role (permitindo ao usuário criar tipos nomeados para esquemas personalizados) ou até mesmo o DBA
função, que permite ao usuário não apenas criar tipos nomeados personalizados, mas também alterá-los e destruí-los. GRANT CONNECT, RESOURCE, DBA TO books_admin;
Atribuindo privilégios
Em seguida, você desejará garantir que o usuário tenha privilégios para realmente se conectar ao banco de dados e criar uma sessão usando
GRANT CREATE SESSION
. Também combinaremos isso com todos os privilégios usando GRANT ANY PRIVILEGE
. GRANT CREATE SESSION GRANT ANY PRIVILEGE TO books_admin;
Também precisamos garantir que nosso novo usuário tenha espaço em disco alocado no sistema para criar ou modificar tabelas e dados, então
GRANT TABLESPACE
igual a:GRANT UNLIMITED TABLESPACE TO books_admin;
Privilégios de mesa
Embora normalmente não seja necessário em versões mais recentes do Oracle, algumas instalações mais antigas podem exigir que você especifique manualmente os direitos de acesso que o novo usuário tem a um esquema específico e tabelas de banco de dados.
Por exemplo, se quisermos que nosso
books_admin
usuário tenha a capacidade de executar SELECT
, UPDATE
, INSERT
e DELETE
recursos nos books
tabela, podemos executar o seguinte GRANT
demonstração:GRANT
SELECT,
INSERT,
UPDATE,
DELETE
ON
schema.books
TO
books_admin;
Isso garante que
books_admin
pode executar as quatro instruções básicas para os books
tabela que faz parte do schema
esquema.