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;