管理 AlloyDB Omni 用户和角色

本页介绍了如何创建和管理 AlloyDB Omni 用户和角色。

除了 PostgreSQL 附带的默认用户和角色之外,您还可以创建其他 PostgreSQL 用户或角色。这些用户拥有与 postgres 用户相同的一组权限:CREATE ROLECREATEDBLOGIN。如需详细了解这些特权,请参阅 CREATE ROLE

您可以使用 ALTER ROLE 命令更改任何用户的权限。如果您使用 psql 客户端创建新用户,则可以选择将其与其他角色相关联,或分配不同的权限。

准备工作

如需使用 PostgreSQL 命令管理集群中的用户,您需要满足以下条件:

  • 有权访问 psql 客户端
  • postgres 数据库用户或其他具有适当管理员权限的用户的访问权限

创建数据库用户

如需创建一个直接使用用户名和密码(也称为内置身份验证)与数据库进行身份验证的数据库用户,请使用以下命令:

  CREATE USER USERNAME WITH PASSWORD 'PASSWORD';

替换以下内容:

  • USERNAME:用户角色的用户名。

  • PASSWORD:要分配给用户角色的新密码。

如需创建使用身份和访问管理 (IAM) 进行身份验证的数据库用户,请参阅管理 IAM 身份验证

如需详细了解如何创建和定义数据库用户,请参阅 CREATE USER

创建用户或角色后,您可以在 psql 客户端中使用 ALTER ROLE 命令更改其权限。

向数据库用户授予角色

如需向数据库用户授予角色,请使用以下命令:

GRANT ROLE to USERNAME;

替换以下内容:

  • ROLE:要授予数据库用户的角色。

  • PASSWORD:要分配给用户角色的新密码。

如需向用户授予超级用户权限,请向该用户授予 alloydbsuperuser 角色。

更改数据库用户的密码

如需为标准 PostgreSQL 数据库用户设置新密码,请使用以下命令:

ALTER USER USERNAME WITH PASSWORD 'PASSWORD';

替换以下内容:

  • USERNAME:数据库用户的用户名。

  • PASSWORD:要分配给用户角色的新密码。

您无法更改或设置基于 IAM 的用户的密码,因为基于 IAM 的用户不使用密码进行身份验证。如需了解详情,请参阅使用 IAM 账号进行连接

如需详细了解如何更改用户的密码,请参阅 ALTER ROLE

撤消数据库用户的角色

如需撤消一个或多个角色之前授予的权限,或撤消用户对某个角色的成员资格,请使用以下命令:

  REVOKE ROLE FROM USERNAME;

如需移除用户的超级用户权限,请从该用户撤消 alloydbsuperuser 角色。

查看数据库用户列表

如需查看包含所有数据库用户及其组成员资格的表格,请使用以下命令:

  \du

删除数据库用户

在删除用户之前,您必须先放弃该用户拥有的所有对象或重新分配其所有权,并撤消该角色对其他对象拥有的任何特权。

如需删除用户,请使用以下命令:

  DROP ROLE USERNAME;

后续步骤