如要允許 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.getresourcemanager.projects.getIamPolicyresourcemanager.projects.setIamPolicy
如要取得這些權限,同時遵循最小權限原則,請要求管理員授予您專案 IAM 管理員 (
roles/resourcemanager.projectIamAdmin) 角色。 -
在您使用的 Google Cloud 專案中啟用 Cloud Resource Manager API。
程序
控制台
- 前往 Google Cloud 控制台的「IAM」頁面。
- 選取已啟用 AlloyDB 存取權的專案。
- 選取要授予存取權的主體 (使用者或服務帳戶):
- 如要將角色授予在專案中已有其他角色的主體,請找出包含該主體電子郵件地址的資料列,依序點選該列的 「Edit principal」(編輯主體) 和 「Add another role」(新增其他角色)。
- 如要將角色授予在專案中沒有其他角色的主體,請按一下 「Grant access」(授予存取權),然後輸入主體的電子郵件地址。
- 從下拉式選單中選取下列其中一個角色:
- AlloyDB 管理員
- AlloyDB 編輯者
- AlloyDB 檢視者
- AlloyDB 用戶端和服務使用情形消費者
- AlloyDB 資料庫使用者
- BackupDR 的 AlloyDB 管理員
- 按一下 [儲存]。主體就會取得該角色。
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.adminroles/alloydb.editorroles/alloydb.viewerroles/alloydb.client。此外,請使用其他指令授予roles/serviceusage.serviceUsageConsumer。roles/alloydb.databaseUserroles/alloydb.backupDrAdmin
如要進一步瞭解這些角色授予的權限,請參閱「預先定義的 AlloyDB IAM 角色」。