Criando usuários e dando permissões no Postgree SQL


#Vitor Panizza#

Fala pessoal, tudo bem?

Hoje vamos aprender como criar usuários e dar permissões de acesso aos mesmos, então instale o postgree no seu linux, estou usando a versão 10.


Temos que conectar ao postgree com a conta de administrador, quando se instala o postgree é criado um super usuário de administração chamado postgres, so que para fazer isso, você deve virar root primeiro.

su - postgres

Entrará nesse bash:

-bash-4.1$

digite:

 psql

Nesse momento está na console de administração, a primeira coisa que vamos fazer é colocar um senha para o usuário postgres

alter user postgres with password 'Senha@123';

Feito isso vamos criar um segundo super usuário chamado "blogger", para não ficar usando o usuário padrão, e vamos dar as permissões de criar bancos, usuários e replicação.

create user blogger with password 'Senha@123' superuser createdb createrole replication;

Se o comando deu certo, irá aparecer: CREATE ROLE

Agora vamos listar os usuários com o comando:

\du

Saída:
                                         List of roles
      Role name       |  Attributes  |                          Member of

----------------------+--------------+------------------------------------------
--------------------
 blogger              | Superuser    | {}
                      : Create role
                      : Create DB



Veja que o usuário blogger é um super usuário.

Bom feito isso, vamos agora criar um banco para testes:

create database TERRA;
\c  TERRA ====> conecta no banco
create table paises (
cod_pais int,
nome varchar (30));

Para lista o banco:
\l
Para listar as tablelas

\dt

Para ver as colunas:

select * from paises

Agora vamos sair e se logar com o usuário que criamos no banco TERRA:

\q

psql -U blogger TERRA -W (vai pedir a senha)

Agora vamos criar um usuário comum chamado matheus e limitar as suas permissões apenas para dar select na tabela paises.


create user matheus with password '123';
grant select on paises to matheus;

Caso precise dar permissão para o usuário pode usar um PK, deverá dar esse comando aqui, porém não é o nosso caso:

grant usage NOME_PK on NOME_TABELA to NOME_USUARIO;


Feito isso, saia e entre com o usuário matheus e tente dar um select, após isso, tente dropar a tabela, ele vai dar acesso negado, conforme configuramos, mas lembre-se, nunca faça um teste desse em uma tabela de produção, isso só é feito em tabelas de testes, por que se por ventura configurou errado, pode apagar a tabela de produção, então tenha cuidado.

Até a próxima :)


Autor: Vitor Panizza
Email: victorhs557@hotmail.com
Contato:1198201-8551


Comentários

Postagens mais visitadas deste blog

Converter certificado digital pfx para pem

Configurando o modo WORKER no Apache - CENTOS