向其他用户授予访问权限

本页介绍了如何向 Google Cloud 用户账号或服务账号授予对项目中 AlloyDB 资源的访问权限。

根据您希望该账号拥有的控制范围,您可以向其授予以下任一预定义 IAM 角色:

  • roles/alloydb.admin(Cloud AlloyDB Admin)以便为所有 AlloyDB 资源授予完全控制权
  • roles/alloydb.client(Cloud AlloyDB Client)和 roles/serviceusage.serviceUsageConsumer(Service Usage Consumer),用于向与 AlloyDB Auth 代理连接的客户端授予对 AlloyDB 实例的连接权限
  • roles/alloydb.databaseUser(Cloud AlloyDB Database User),用于向 AlloyDB 实例授予数据库用户身份验证
  • roles/alloydb.viewer(Cloud AlloyDB Viewer),用于向用户授予对所有 AlloyDB 资源的只读权限

如需详细了解这些角色提供的特定 IAM 权限,请参阅 AlloyDB 预定义 IAM 角色

准备工作

  • 您使用的 Google Cloud 项目必须已启用 AlloyDB 访问权限
  • 您必须在所使用的 Google Cloud 项目中拥有 roles/owner(Owner)基本 IAM 角色,或者拥有授予以下权限的角色:
    • resourcemanager.projects.get
    • resourcemanager.projects.getIamPolicy
    • resourcemanager.projects.setIamPolicy

    如需获得这些权限,同时遵循最小权限原则,请让管理员向您授予 roles/resourcemanager.projectIamAdmin(项目 IAM 管理员)角色。

  • 在您使用的 Google Cloud 项目中启用 Cloud Resource Manager API。

    启用 API

过程

控制台

  1. 在 Google Cloud 控制台中,前往 IAM 页面。

    进入 IAM

  2. 选择已启用以访问 AlloyDB 的项目。
  3. 选择要向其授予访问权限的主账号(用户或服务账号):
    • 如需向已在项目中具有其他角色的主账号授予角色,请找到包含该主账号电子邮件地址的行,点击该行中的 修改主账号,然后点击 添加其他角色
    • 如需向尚未拥有项目其他角色的主账号授予角色,请点击 添加,然后输入该主账号的电子邮件地址。
  4. 从下拉列表中选择以下任一角色:
    • Cloud AlloyDB Admin
    • Cloud AlloyDB Viewer
    • Cloud AlloyDB ClientService Usage Consumer
    • Cloud AlloyDB Database User
  5. 点击保存。系统会向主账号授予该角色。

gcloud

如需使用 gcloud CLI,您可以安装并初始化 Google Cloud CLI,也可以使用 Cloud Shell

使用 add-iam-policy-binding 命令向 IAM 正文(用户账号或服务账号)授予 AlloyDB 预定义角色。

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member=PRINCIPAL \
    --role=ALLOYDB_ROLE
  • PROJECT_ID:已启用访问 AlloyDB 权限的项目的 ID。
  • PRINCIPAL:主账号的类型和电子邮件 ID(电子邮件地址):
    • 对于用户账号:user:EMAIL_ID
    • 对于服务账号:serviceAccount:EMAIL_ID
  • ALLOYDB_ROLE:您要授予主账号的角色。该值必须为以下值之一:

    • roles/alloydb.admin
    • roles/alloydb.viewer
    • roles/alloydb.client”和“roles/serviceusage.serviceUsageConsumer
    • roles/alloydb.databaseUser

    如需详细了解这些角色授予的权限,请参阅 AlloyDB 预定义 IAM 角色