將存取權授予其他使用者

如要允許 Google Cloud 使用者帳戶或服務帳戶管理、查看或連線至專案中的 AlloyDB for PostgreSQL 資源,您可以為帳戶授予預先定義的 Identity and Access Management (IAM) 角色。

視您希望帳戶擁有的控制範圍而定,請授予下列其中一個預先定義的 IAM 角色:

  • AlloyDB 管理員 (roles/alloydb.admin):可授予所有 AlloyDB 資源的完整控制權

  • AlloyDB 編輯者 (roles/alloydb.editor):授予讀取/寫入權限,可建立、修改及刪除 AlloyDB 資源,但無法管理標記繫結或備份和災難復原服務備份方案

  • AlloyDB 用戶端 (roles/alloydb.client) 和服務使用情形消費者 (roles/serviceusage.serviceUsageConsumer),可授予 AlloyDB 執行個體的連線存取權,讓用戶端透過 AlloyDB Auth Proxy 或 AlloyDB 語言連接器連線

  • AlloyDB 資料庫使用者 (roles/alloydb.databaseUser):可授予 AlloyDB 執行個體的 IAM 資料庫使用者登入權限,以及 AlloyDB Studio 查詢權限

  • AlloyDB 檢視者 (roles/alloydb.viewer):可授予所有 AlloyDB 資源的唯讀存取權

  • BackupDR 的 AlloyDB 管理員 (roles/alloydb.backupDrAdmin):授予權限,可使用備份和災難復原功能,管理 AlloyDB 叢集備份和還原作業

如要進一步瞭解這些角色提供的特定 IAM 權限,請參閱「預先定義的 AlloyDB IAM 角色」。

事前準備

  • 您使用的 Google Cloud 專案必須啟用 AlloyDB 存取權。
  • 您必須在使用的 Google Cloud 專案中具備「擁有者」(roles/owner) 基本 IAM 角色,或具備下列權限的角色:
    • resourcemanager.projects.get
    • resourcemanager.projects.getIamPolicy
    • resourcemanager.projects.setIamPolicy

    如要取得這些權限,同時遵循最小權限原則,請要求管理員授予您專案 IAM 管理員 (roles/resourcemanager.projectIamAdmin) 角色。

  • 在您使用的 Google Cloud 專案中啟用 Cloud Resource Manager API。

    啟用 API

程序

控制台

  1. 前往 Google Cloud 控制台的「IAM」頁面。

    前往「IAM」頁面

  2. 選取已啟用 AlloyDB 存取權的專案。
  3. 選取要授予存取權的主體 (使用者或服務帳戶):
    • 如要將角色授予在專案中已有其他角色的主體,請找出包含該主體電子郵件地址的資料列,依序點選該列的 「Edit principal」(編輯主體) 和 「Add another role」(新增其他角色)。
    • 如要將角色授予在專案中沒有其他角色的主體,請按一下 「Grant access」(授予存取權),然後輸入主體的電子郵件地址。
  4. 從下拉式選單中選取下列其中一個角色:
    • AlloyDB 管理員
    • AlloyDB 編輯者
    • AlloyDB 檢視者
    • AlloyDB 用戶端和服務使用情形消費者
    • AlloyDB 資料庫使用者
    • BackupDR 的 AlloyDB 管理員
  5. 按一下 [儲存]。主體就會取得該角色。

gcloud

如要使用 gcloud CLI,您可以安裝並初始化 Google Cloud CLI,也可以使用 Cloud Shell。

使用 add-iam-policy-binding 指令,將 AlloyDB 預先定義的角色授予 IAM 主體 (使用者帳戶或服務帳戶)。

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.editor
    • roles/alloydb.viewer
    • roles/alloydb.client。此外,請使用其他指令授予 roles/serviceusage.serviceUsageConsumer。
    • roles/alloydb.databaseUser
    • roles/alloydb.backupDrAdmin

    如要進一步瞭解這些角色授予的權限,請參閱「預先定義的 AlloyDB IAM 角色」。