本文件列出您在不同專案中使用 Workload Manager 評估功能,以及自動建立 Workload Manager 服務帳戶執行評估作業時,所需的角色和權限。
Workload Manager 專案
Workload Manager 評估會掃描多個專案 (稱為「目標專案」) 中的資源,但評估結果只會儲存在一個專案 (稱為「用戶專案」) 中。
您可以使用消費者專案存取Google Cloud 主控台中的 Workload Manager,以及建立及執行評估作業。使用 Google Cloud 主控台建立評估項目時,請在工作流程的「評估範圍」部分,指定儲存您要評估的資源的目標專案。
如果要評估的資源位於您建立 Workload Manager 評估的專案中,則使用者專案也會視為其中一個目標專案。
建立及執行評估作業所需的權限總覽
下表列出消費者和目標專案中使用者必須具備的權限,才能使用 Workload Manager 建立及執行評估作業。如要取得所需權限,請向管理員要求授予包含必要權限的角色,或建立自訂角色。
動作 | 消費者專案 | 目標專案 |
---|---|---|
啟用 Workload Manager API |
權限:serviceusage.services.enable 包含權限的預先定義角色: roles/serviceusage.serviceUsageAdmin
|
無 |
建立評估作業 |
1. 建立服務帳戶的權限:resourcemanager.projects.setIamPolicy 包含該權限的預先定義角色: roles/resourcemanager.projectIamAdmin
只有在建立第一項評估作業時才需要。
2. 授予建立評估作業權限的預先定義角色: |
建立服務帳戶的權限:resourcemanager.projects.setIamPolicy 包含該權限的預先定義角色: roles/resourcemanager.projectIamAdmin
只有在建立第一項評估作業時才需要。 |
執行評估作業 |
權限:workloadmanager.evaluations.run 包含權限的預先定義角色: roles/workloadmanager.evaluationAdmin
|
無 |
查看評估結果 |
權限:workloadmanager.results.list 包含權限的預先定義角色: roles/workloadmanager.evaluationAdmin 或 roles/workloadmanager.evaluationViewer
|
無 |
Workload Manager 服務代理
Workload Manager 會使用服務代理程式,控管資源與相關專案之間的存取權和通訊。
您可以使用 Google Cloud console 或 Workload Manager API 來評估工作負載。如果您使用 Google Cloud console,Workload Manager 會自動建立所有必要的服務代理。如果您使用 Workload Manager API,則必須手動建立服務代理程式。
必要的角色
如要取得建立服務代理人所需的權限,請要求管理員為您授予範圍內每個目標專案的 Project IAM Admin (roles/resourcemanager.projectIamAdmin
) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色包含 resourcemanager.projects.setIamPolicy
權限,這是建立服務代理所需的權限。
為服務專員建立及授予角色
Google Cloud 控制台
如果您使用 Google Cloud console 評估工作負載,Workload Manager 會自動在消費者專案中建立服務代理程式。
這個服務代理程式的電子郵件地址為 service-PROJECT_NUMBER@gcp-sa-workloadmanager.iam.gserviceaccount.com
,稱為 Workload Manager 服務帳戶。
Workload Manager 服務服務代理人需要具備下列角色才能執行評估。系統提示時,請將這些角色授予服務代理。
- Workload Manager 服務代理 (
roles/workloadmanager.serviceAgent
):目標專案中必備。 - Workload Manager 工作者 (
roles/workloadmanager.worker
):只有在您為評估作業設定頻率時,才需要在消費者專案中使用。
Workload Manager API
如果您使用 Workload Manager API 評估工作負載,則必須先在消費者專案中手動建立 Workload Manager 服務代理程式,才能建立評估作業。如要建立服務代理程式,請使用 gcloud beta services identity create
指令:
gcloud beta services identity create --service=workloadmanager.googleapis.com \ --project=PROJECT_NUMBER
將 PROJECT_NUMBER
替換為您要建立服務代理的消費者專案的數字 ID。
建立服務代理後,您必須將下列角色授予服務代理:
- Workload Manager 服務代理 (
roles/workloadmanager.serviceAgent
):目標專案中必備。 - Workload Manager 工作者 (
roles/workloadmanager.worker
):只有在您為評估作業設定頻率時,才需要在消費者專案中使用。
詳情請參閱「為服務代理人授予角色」。
其他 Workload Manager 角色
使用者需要額外的 Workload Manager 角色,才能進一步控制 Workload Manager 評估作業和資源的存取權。
詳情請參閱「Workload Manager:使用 IAM 控管存取權」。