Como criar usuário em PostgreSQL Usando o PgAdmin

⚡ Resumo Inteligente

Criar um usuário em PostgreSQL Isso pode ser feito visualmente no pgAdmin ou com o comando CREATE USER no SQL Shell. Em seguida, você pode conceder privilégios com GRANT, modificar funções com ALTER USER e remover contas com DROP USER.

  • 🖱️ Criar no pgAdmin: Clique com o botão direito do mouse em Login/Funções de Grupo, insira um nome, defina uma senha e privilégios e, em seguida, salve para criar o usuário.
  • 💻 Comando CRIAR USUÁRIO: No SQL Shell, o comando CREATE USER nome_de_usuário WITH options define o login, o superusuário e a senha em um único comando.
  • 🔑 Garantir acesso: GRANT ALL PRIVILEGES ON DATABASE db TO user concede acesso a um usuário existente ao banco de dados.
  • 🔧 ALTERAR USUÁRIO: O comando ALTER USER ajusta as permissões de uma função, adicionando ou revogando privilégios como SUPERUSER.
  • 🗑️ DEIXAR USUÁRIO: O comando DROP USER remove uma conta, mas somente depois que ela não possuir mais nenhum objeto no banco de dados.
  • 🧾 Função vs. Usuário: O comando CREATE USER usa LOGIN como padrão, enquanto o comando CREATE ROLE usa NOLOGIN como padrão; fora isso, eles são iguais.

Como criar usuário em PostgreSQL Usando o PgAdmin

Como Criar PostgreSQL Usuário no PgAdmin

A seguir está um processo passo a passo sobre como criar um usuário em PostgreSQL PgAdmin:

Passo 1) Clique com o botão direito em Login

Na primeira etapa, clique com o botão direito em Função de grupo de login -> Criar -> Clique em Função de grupo de login…

Criar PostgreSQL Usuário no PgAdmin

Passo 2) Criar função de login/grupo

Agora, digite o nome para o login

Criar PostgreSQL Usuário no PgAdmin

Passo 3) Clique em Definição e insira detalhes

  1. Digite a senha
  2. Uma data de expiração para a conta

Criar PostgreSQL Usuário no PgAdmin

Passo 4) A seção Privilégio

  1. Toggle Pode fazer login no botão SIM
  2. Toggle Superusuário para SIM

Criar PostgreSQL Usuário no PgAdmin

Passo 5) O SQL seção

  1. Você verá a consulta SQL para criar um usuário de acordo com as seleções feitas nas etapas anteriores
  2. Clique no botão Salvar

Criar PostgreSQL Usuário no PgAdmin

Passo 6) A função é criada

Agora, Role é refletido na árvore de objetos.

Criar PostgreSQL Usuário no PgAdmin

Passo 7) Crie uma banco de dados

Agora, atribua o proprietário myguru a ele, conforme mostrado abaixo, no exemplo de criação do usuário Postgres.

Criar PostgreSQL Usuário no PgAdmin

Passo 8) A linha de comando

Agora você pode ver que o dono é meuguru.

Criar PostgreSQL Usuário no PgAdmin

PostgreSQL Crie um usuário SQLShell (linha de comando)

Você pode criar um usuário usando o comando de linha de comando

CRIAR USUÁRIO

Este método de criação de usuário com senha do Postgres é mais conveniente para programadores e administradores, pois eles têm acesso ao console do PostgreSQL servidor. Além disso, eles precisam criar usuários Postgres e executá-los com um único comando no lugar de fazer login e usar a interface do PostgreSQL cliente.

Sintaxe:

CREATE USER name [ WITH ] option [ ... ]

where option can be:

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
    | VALID UNTIL 'timestamp'
    | IN ROLE role_name [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid

Exemplo:

CREATE USER tom;

criará um usuário tom

CREATE USER tom WITH SUPERUSER;

Será criado um usuário chamado tom com privilégios de superusuário. Vejamos o exemplo a seguir.

Passo 1) Estamos criando um superusuário válido até 3rd Abril de 2025, 11:50:38 IST. Digite o seguinte comando.

CREATE USER mytest WITH
	LOGIN
	SUPERUSER
	CREATEDB
	CREATEROLE
	INHERIT
	NOREPLICATION
	CONNECTION LIMIT -1
	VALID UNTIL '2025-04-03T11:50:38+05:30'
	PASSWORD '123456';

Crie um usuário SQLShell

Passo 2) Digite o comando \du na lista de verificação de usuários

Crie um usuário SQLShell

OBSERVAÇÃO: O comando CREATE USER é semelhante ao comando CREATE ROLE. A diferença entre os dois comandos é que, ao executar o comando CREATE USER no PostgreSQL, o usuário assume o estado LOGIN por padrão, enquanto que, ao usar a opção CREATE ROLE, o usuário assume o estado NOLOGIN.

Adicionar um usuário existente a um banco de dados

Você pode conceder privilégios a um usuário para acessar um banco de dados.

Exemplo, concedemos ao usuário “mytest” todos os privilégios do usuário guru99

GRANT ALL PRIVILEGES ON DATABASE guru99 TO mytest;

Adicionar um usuário existente a um banco de dados

Após a execução do PostgreSQL add user comando, o usuário poderá acessar o banco de dados com as permissões fornecidas.

O comando GRANT é muito poderoso. Você pode conceder privilégios granulares como Selecionar, Inserir, Atualizar a um usuário.

PostgreSQL Atualizando USUÁRIO

Alterando permissões de usuário existentes

Agora que nosso novo usuário “mytest” existe você pode usar ALTER USER para alterar as permissões concedidas ao bibliotecário.

O formato de ALTER USER Postgres inclui o nome do usuário seguido de algumas opções para informar PostgreSQL quais alterações permissivas fazer:

ALTER USER role_specification WITH OPTION1 OPTION2 OPTION3;

Revok Permissões

Você precisa usar este comando quando cometer um erro e atribuir incorretamente uma permissão que deseja revogar. Você pode usar o comando ALTER USER sem prefixo antes das opções permissivas.

Por exemplo, podemos remover o status SUPERUSER do mytest como:

ALTER USER mytest WITH NOSUPERUSER;

Usando \du, você observará que o privilégio de superusuário foi removido.

Revok Permissões

Atribuindo permissão

Você pode usar a permissão do usuário SUPERUSER em “mytest” usando o seguinte comando

ALTER USER mytest WITH SUPERUSER;

Usando \du, você observará que o privilégio de superusuário foi adicionado.

Atribuindo permissão

PostgreSQL Excluindo usuário

Você pode excluir qualquer usuário se tiver certeza de que o usuário específico não pertence mais ao seu banco de dados. Observe que a exclusão dos usuários nunca afetará o banco de dados real.

Syntax: DROP USER [user]

Para excluir qualquer usuário, você deve ter certeza de que o usuário é proprietário do banco de dados. Caso contrário, você poderá receber uma mensagem de erro.

ERROR:  role "username" cannot be dropped because some objects depend on it

Exemplo:

  1. A conta “myguru” é proprietária do banco de dados “demoDB”.
  2. Digite o comando DROP USER myguru
  3. O erro é mostrado

PostgreSQL Excluindo usuário

Assim que alterarmos o proprietário do banco de dados, o usuário poderá ser excluído

PostgreSQL Excluindo usuário

Folha de fraude

Aqui estão comandos importantes

comandos Descrição
CREATE USER [user]
Comando para criar um usuário
ALTER USER role_specification
Alterando permissões de usuário existentes
ALTER USER [user]
Revok Permissões
ALTER USER [user name] WITH SUPERUSER
Atribuindo permissão
DROP USER [user]
Comando para excluir um usuário

Perguntas Frequentes

No shell psql, execute o comando \du para listar todas as funções e seus atributos. Você também pode consultar o catálogo do sistema com SELECT rolname FROM pg_roles para obter as mesmas informações programaticamente.

Use o comando ALTER USER, por exemplo, ALTER USER mytest WITH PASSWORD 'novasenha'. A alteração entra em vigor imediatamente. As senhas são armazenadas criptografadas e somente os superusuários ou o próprio usuário podem alterá-las.

In PostgreSQLUsuários e funções são o mesmo objeto. O comando CREATE USER cria uma função que pode fazer login por padrão, enquanto o comando CREATE ROLE cria uma função que não pode fazer login a menos que você adicione o atributo LOGIN.

A IA pode gerar instruções CREATE USER, GRANT e ALTER USER a partir de uma descrição simples do acesso necessário e explicar cada privilégio. Isso ajuda a aplicar o princípio do menor privilégio sem precisar memorizar a sintaxe.

Sim. A IA pode sugerir comandos GRANT específicos que concedem apenas os privilégios necessários, alertar contra a concessão de acesso amplo de superusuário e recomendar o uso de funções para agrupar permissões, facilitando e tornando mais seguro o gerenciamento.

Resuma esta postagem com: