本页面介绍了如何向 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(Project IAM Admin) 角色。
- 
  在您使用的 Google Cloud 项目中启用 Cloud Resource Manager API。 
过程
控制台
- 在 Google Cloud 控制台中,前往 IAM 页面。
- 选择启用才能访问 AlloyDB 的项目。
- 选择要向其授予访问权限的主账号(用户或服务账号):
    - 如需向已在项目上具有其他角色的主账号授予角色,请找到包含该主账号邮箱的行,点击该行中的 修改主账号,然后点击 添加其他角色。
- 如需向尚未拥有项目其他角色的主账号授予角色,请点击 添加,然后输入该主账号的邮箱。
 
- 从下拉列表中选择以下任一角色:
    - Cloud AlloyDB Admin
- Cloud AlloyDB Viewer
- Cloud AlloyDB Client 和 Service Usage Consumer
- Cloud AlloyDB Database User
 
- 点击保存。系统会向主账号授予该角色。
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 角色。