Gerenciar usuários e funções do AlloyDB Omni

Esta página descreve como criar e gerenciar usuários e papéis do AlloyDB Omni.

Além dos usuários e papéis padrão que vêm com o PostgreSQL, você pode criar outros usuários ou papéis do PostgreSQL. Esses usuários têm o mesmo conjunto de privilégios que o usuário postgres: CREATE ROLE, CREATEDB e LOGIN. Para mais informações sobre esses privilégios, consulte CREATE ROLE.

É possível mudar os privilégios de qualquer usuário usando o comando ALTER ROLE. Se você criar um novo usuário com o cliente psql, poderá associá-lo a uma função diferente ou atribuir privilégios diferentes.

Antes de começar

Para usar comandos do PostgreSQL para gerenciar usuários em um cluster, você precisa do seguinte:

  • Acesso ao cliente psql
  • Acesso ao usuário do banco de dados postgres ou a outro usuário com os privilégios administrativos adequados

Criar um usuário do banco de dados

Para criar um usuário do banco de dados que se autentica diretamente com o banco de dados usando um nome de usuário e uma senha, também conhecido como autenticação integrada, use o seguinte comando:

  CREATE USER USERNAME WITH PASSWORD 'PASSWORD';

Substitua:

  • USERNAME: o nome de função do usuário do usuário.

  • PASSWORD: a nova senha a ser atribuída à função do usuário.

Para criar um usuário do banco de dados que use o Identity and Access Management para autenticação, consulte Gerenciar a autenticação do IAM.

Para mais informações sobre como criar e definir usuários do banco de dados, consulte CREATE USER.

Depois de criar um usuário ou uma função, você pode mudar os privilégios usando o comando ALTER ROLE no cliente psql.

Conceder papéis a um usuário do banco de dados

Para conceder papéis a um usuário do banco de dados, use o seguinte comando:

GRANT ROLE to USERNAME;

Substitua:

  • ROLE: o papel a ser concedido ao usuário do banco de dados.

  • PASSWORD: a nova senha a ser atribuída à função do usuário.

Para conceder privilégios de superusuário a um usuário, atribua a ele o papel alloydbsuperuser.

Mudar a senha de um usuário do banco de dados

Para definir uma nova senha para um usuário padrão do banco de dados PostgreSQL, use o seguinte comando:

ALTER USER USERNAME WITH PASSWORD 'PASSWORD';

Substitua:

  • USERNAME: o nome de usuário do usuário do banco de dados.

  • PASSWORD: a nova senha a ser atribuída à função do usuário.

Não é possível mudar ou definir a senha de um usuário baseado no IAM, porque esses usuários não usam senhas para autenticação. Para mais informações, consulte Conectar usando uma conta do IAM.

Para mais informações sobre como mudar a senha de um usuário, consulte ALTER ROLE.

Revogar uma função de um usuário do banco de dados

Para revogar um privilégio concedido anteriormente de um ou mais papéis ou revogar a associação de um usuário a um papel, use o seguinte comando:

  REVOKE ROLE FROM USERNAME;

Para remover os privilégios de superusuário de um usuário, revogue a função alloydbsuperuser dele.

Conferir uma lista de usuários do banco de dados

Para conferir uma tabela com todos os usuários do banco de dados e os grupos a que eles pertencem, use o seguinte comando:

  \du

Excluir um usuário do banco de dados

Antes de excluir um usuário, você precisa descartar todos os objetos que são da propriedade dele ou reatribuir a propriedade e revogar os privilégios concedidos ao papel em outros objetos.

Para excluir um usuário, use o seguinte comando:

  DROP ROLE USERNAME;

A seguir