BD II – Usuários no PostGreSQL

Criação de novos usuários no banco PostGreSQL

Antes, usando o PGAdminIII crie um banco vazio chamado ‘permissions’ e logue-se nele como postgres e selecione o banco ‘permissions’ que é aonde serão feitos os testes.

Para criar novos usuários utilização o comando CREATE USER.

Vamos partir do exemplo que você está logado como superusuário, no caso usuário ‘postgres’.

 CREATE USER bogs;

Para adicionar uma senha ao usuário, no caso atribuiu a senha ‘123’ ao usuários bogs.

 ALTER USER bogs PASSWORD '123';

Outros usuários.

 CREATE USER chefebogs;
 ALTER USER chefebogs PASSWORD 'chefebogs';

Vamos aprender também a criar um SCHEMA próprio para trabalharmos com nossas permissões. Com o comando abaixo, vamos criar um esquema chamado ‘rh’ que representa o setor de funcionários dos recursos humanos.

 CREATE SCHEMA rh;

Agora vamos atribuir o esquema criado para os usuários ‘bogs’ e ‘chefebogs’.

  GRANT ALL ON SCHEMA rh TO bogs;
  GRANT ALL ON SCHEMA rh TO chefebogs;

Vamos criar  tabelas no esquema RH. As tabelas DEPTO e CATEGORIA_SALARIAL, notem o  ‘RH. ‘ na frente das tabelas.

CREATE TABLE RH.DEPTO(
 ID INTEGER PRIMARY KEY,
 DEPNOME VARCHAR(100) NOT NULL
);

CREATE TABLE RH.CATEGORIA_SALARIAL (
 ID INTEGER PRIMARY KEY,
 DESCRICAO VARCHAR(100) NOT NULL,
 VALOR NUMERIC(15,2) NOT NULL
);

Agora vamos atribuir os privilégios de INSERÇÃO, ELIMINAÇÃO,SELEÇÃO, ALTERAÇÃO na tabela RH.DEPTO para o usuário ‘bogs’. Existem dois modos:

GRANT INSERT,UPDATE,DELETE,SELECT ON RH.DEPTO TO BOGS,CHEFEBOGS;

ou

GRANT ALL PRIVILEGES ON rh.depto TO bogs,chefebogs;

Agora para tabela CATEGORIA_SALARIAL, vamos dar permissões diferenciadas.

Total para o ‘chefebogs’ e somente inserção e seleção para o ‘bogs’.

GRANT INSERT,SELECT ON rh.categoria_salarial TO bogs;
GRANT ALL PRIVILEGES ON rh.categoria_salarial TO chefebogs;

Eliminando usuários, no caso um usuário identificado como ‘jose’.

 DROP USER jose;

Revogando permissões de um usuário.

Para retirar as permissões concedidas aos usuários, usa-se o comando REVOKE. revogando as permissões do usuário ‘bogs’.

revogando todas as permissões do ‘bogs’ da tabela rh.depto.

 REVOKE ALL PRIVILEGES ON rh.depto FROM bogs;

ou apenas retirando alguma permissão do usuário ‘bogs’ em relação a tabela rh.depto.

  REVOKE INSERT ON RH.DEPTO from bogs;

Desfazendo tudo.

REVOKE ALL PRIVILEGES ON RH.DEPTO from bogs,chefebogs;

REVOKE ALL PRIVILEGES ON RH.CATEGORIA_SALARIAL from
bogs,chefebogs;
REVOKE ALL ON SCHEMA RH from bogs,chefebogs;

DROP TABLE RH.DEPTO;

DROP TABLE RH.CATEGORIA_SALARIAL;

DROP SCHEMA RH;

DROP USER BOGS;

DROP USER CHEFEBOGS;
Esse post foi publicado em BD II - Banco de Dados II e marcado , , . Guardar link permanente.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s