Criar um utilizador no PostgreSQL e atribuir permissões pode parecer complicado, mas é bastante simples uma vez que se compreende o básico. O PostgreSQL é um sistema de gestão de bases de dados poderoso, utilizado para gerir dados de forma eficiente. Para permitir que diferentes pessoas ou aplicações acedam à base de dados, é necessário criar utilizadores e atribuir-lhes permissões específicas. Este processo garante que apenas utilizadores autorizados podem visualizar ou modificar os dados, mantendo-os seguros e bem geridos.
Neste guia, vamos guiá-lo pelos passos simples para criar um utilizador no PostgreSQL, criar uma base de dados e atribuir as permissões necessárias, tornando-o fácil de seguir até para principiantes.
Instruções Rápidas
Aqui estão as instruções rápidas para criar um utilizador e uma base de dados com atribuição de permissões no servidor PostgreSQL. Testado com PostgreSQL 16 em Ubuntu 24.04 LTS, estas instruções irão guiá-lo facilmente através do processo.
CREATE DATABASE minha_base_de_dados;
CREATE USER novo_utilizador WITH PASSWORD 'senha';
GRANT ALL PRIVILEGES ON DATABASE minha_base_de_dados TO novo_utilizador;
SQL
Certifique-se de ligar à interface de linha de comandos do PostgreSQL usando o comando sudo -i -u postgres psql
.
Instruções Detalhadas Passo a Passo
O PostgreSQL é um sistema de base de dados poderoso. Para o usar, é necessário criar utilizadores, bases de dados e atribuir permissões. Este guia irá mostrar-lhe como fazer isto passo a passo.
Passo 1: Conectar ao PostgreSQL
O primeiro passo é conectar ao servidor PostgreSQL. Pode fazê-lo através de interfaces gráficas ou abrir a linha de comandos do PostgreSQL.
sudo -i -u postgres psql
Passo 2: Criar um Utilizador
Um utilizador no PostgreSQL é como uma pessoa que pode aceder à base de dados. Pode criar um através do seguinte comando:
CREATE USER novo_utilizador WITH PASSWORD 'senha';
Substitua novo_utilizador
pelo nome que deseja para o utilizador.
Substitua senha
por uma palavra-passe forte para o utilizador.
Passo 3: Criar uma Base de Dados
Uma base de dados é um local onde armazena os seus dados. Para criar uma base de dados, execute o seguinte comando:
CREATE DATABASE minha_base_de_dados;
Substitua minha_base_de_dados
pelo nome que deseja para a base de dados.
Passo 4: Atribuir Permissões
As permissões são como regras que decidem o que um utilizador pode fazer com uma base de dados. Pode escolher atribuir todos os privilégios a um utilizador numa base de dados especificada ou dar acesso limitado a tabelas específicas.
Atribuir Acesso Total à Base de Dados
Geralmente, fornecemos acesso total à base de dados para facilitar o funcionamento de qualquer aplicação. Em ambientes de desenvolvimento e teste, é aceitável permitir privilégios totais.
Use a seguinte instrução para permitir acesso total à minha_base_de_dados
ao novo_utilizador
:
GRANT ALL ON DATABASE minha_base_de_dados TO novo_utilizador;
Mas, em alguns casos, pode ser necessário permitir a um utilizador o acesso a tabelas específicas. Por exemplo, pode querer permitir apenas o acesso à tabela de produtos a um ponto de acesso de API publicamente acessível.
Permitir Conexão à Base de Dados
A seguir, é necessário conceder ao novo utilizador permissão para se conectar a uma base de dados específica. Vamos assumir que tem uma base de dados chamada minha_base_de_dados
. Use o comando GRANT
para dar ao novo_utilizador
acesso à minha_base_de_dados
:
GRANT CONNECT ON DATABASE minha_base_de_dados TO novo_utilizador;
Isto não permitirá o acesso aos dados das tabelas ao utilizador. Para permitir o acesso aos dados, precisa conceder permissões específicas para as tabelas.
Atribuir Permissões às Tabelas
Após conceder acesso à base de dados, pode querer dar ao utilizador permissões em tabelas específicas dentro da base de dados. Veja como pode fazer isso:
Atribuir Permissão SELECT (Apenas Leitura)
Para permitir que o novo_utilizador
leia dados de uma tabela chamada minha_tabela
:
GRANT SELECT ON minha_tabela TO novo_utilizador;
Atribuir Permissão INSERT (Adicionar Dados)
Para permitir que o novo_utilizador
insira dados na minha_tabela
:
GRANT INSERT ON minha_tabela TO novo_utilizador;
Atribuir Permissão UPDATE (Modificar Dados)
Para permitir que o novo_utilizador
atualize dados existentes na minha_tabela
:
GRANT UPDATE ON minha_tabela TO novo_utilizador;
Atribuir Permissão DELETE (Remover Dados)
Para permitir que o novo_utilizador
delete dados da minha_tabela
:
GRANT DELETE ON minha_tabela TO novo_utilizador;
Atribuir Todas as Permissões
Se quiser conceder todas as permissões (SELECT, INSERT, UPDATE, DELETE) numa tabela ao novo_utilizador
, pode usar o seguinte comando:
GRANT ALL PRIVILEGES ON minha_tabela TO novo_utilizador;
Passo 5: Revogar Permissões
Caso precise revogar permissões de um utilizador, pode usar o comando REVOKE
. Por exemplo, para remover a permissão INSERT do novo_utilizador
na minha_tabela
:
REVOKE INSERT ON minha_tabela FROM novo_utilizador;
Passo 6: Eliminar um Utilizador
Se precisar eliminar um utilizador, pode usar o comando DROP USER
. Por exemplo, para eliminar o novo_utilizador
:
DROP USER novo_utilizador;
Resumo
Criar um utilizador, base de dados e atribuir permissões no PostgreSQL é simples. Apenas precisa executar três comandos. Primeiro, crie um utilizador com CREATE USER
. Segundo, crie uma base de dados com CREATE DATABASE
. Finalmente, conceda acesso ao utilizador com o comando GRANT
. O PostgreSQL permite-lhe escolher quais dados um utilizador pode ver, editar ou eliminar das tabelas.
Espero que este tutorial o tenha ajudado a aprender a criar utilizadores e atribuir permissões no servidor PostgreSQL.