App Optimize API 使用 Identity and Access Management (IAM) 控管資源存取權,例如報表和作業。IAM 可讓您對特定 App Optimize API 資源授予精細的存取權,協助預防其他資源遭到存取。
本文說明適用於 App Optimize API 的 IAM 權限和角色。
權限總覽
擁有權限的使用者才能對 App Optimize API 資源執行特定操作。下表列出 App Optimize API 的權限:
| 權限 | 說明 |
|---|---|
appoptimize.operations.cancel |
取消長時間執行的作業。 |
appoptimize.operations.delete |
刪除一個長時間執行的作業。 |
appoptimize.operations.get |
取得長時間執行的作業狀態。 |
appoptimize.operations.list |
列出長時間執行的作業。 |
appoptimize.reports.create |
建立 App Optimize API 報表資源。 |
appoptimize.reports.delete |
刪除 App Optimize API 報表資源。 |
appoptimize.reports.get |
讀取 App Optimize API 報表資源的設定中繼資料。 這不會授予報表資料的存取權。 |
appoptimize.reports.getData |
讀取 App Optimize API 報表中的資料。 |
appoptimize.reports.list |
列出專案中的 App Optimize API 報表資源。 |
預先定義的角色
IAM 提供預先定義角色,可授予一組相關權限。App Optimize API 提供下列角色:
| 角色 | 名稱 | 說明 |
|---|---|---|
roles/appoptimize.admin |
App Optimize 管理員 | 全面掌控 App Optimize API 報表和作業。 |
roles/appoptimize.viewer |
App Optimize 檢視者 | 可讀取 App Optimize API 報表中繼資料、報表資料和作業。 |
授予 IAM 角色
您可以使用Google Cloud 控制台或 Google Cloud CLI,將 IAM 角色授予主體。
控制台
前往 Google Cloud 控制台的「IAM」(身分與存取權管理) 頁面。
按一下 「授予存取權」。
在「New principals」(新增主體) 欄位中,輸入要授予角色的主體電子郵件地址。
按一下「Select a role」(選取角色) 下拉式選單。
篩選「應用程式最佳化」角色,然後選取要授予的角色,例如「應用程式最佳化管理員」或「應用程式最佳化檢視者」。
按一下 [儲存]。
gcloud
如果尚未安裝,請安裝並初始化 Google Cloud CLI。
使用
gcloud projects add-iam-policy-binding指令授予角色:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="ROLE_NAME"更改下列內容:
PROJECT_ID:專案的 ID。 Google CloudPRINCIPAL:主體的 ID,例如user:my-user@example.com或group:my-group@example.com。請參閱「主體 ID」。ROLE_NAME:要授予的角色,例如roles/appoptimize.admin或roles/appoptimize.viewer。
例如,如要將應用程式最佳化管理員角色授予專案 my-appoptimize-project 的使用者 test-user@example.com:
gcloud projects add-iam-policy-binding my-appoptimize-project \
--member="user:test-user@example.com" \
--role="roles/appoptimize.admin"
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
App Optimize 管理員
App Optimize 管理員可全面控管 App Optimize API 資源, 並具備 App Optimize 檢視者權限。
| 角色名稱 | 包含的權限 |
|---|---|
roles/appoptimize.admin |
|
App Optimize 檢視者
App Optimize Viewer 可授予權限,讀取 App Optimize API 報表、中繼資料和作業。
| 角色名稱 | 包含的權限 |
|---|---|
roles/appoptimize.viewer |
|
建立報表的權限
如要建立報表,使用者、服務帳戶或其他主體必須具備下列條件:
專案的
appoptimize.reports.create權限,用於建立報表資源。應用程式最佳化管理員 (roles/appoptimize.admin) 角色已具備此權限。報表範圍內所有專案的
billing.resourceCosts.get權限。這項權限由「帳單帳戶檢視者」(roles/billing.viewer) 或基本「檢視者」(roles/viewer) 等角色提供。有權存取報表範圍、維度和指標涵蓋的資料來源。App Optimize API 會在建立報表時檢查這些權限。可授予這項資料來源存取權的角色包括:
CPU 和記憶體使用率指標:範圍內資源的監控檢視器 (
roles/monitoring.viewer)。如要查看 App Hub 應用程式範圍和維度,您必須是應用程式 App Hub 主專案的應用程式管理檢視者 (
roles/apphub.appManagementViewer)。
如果您要產生應用程式中樞應用程式的報表 (可能由多個專案組成),您必須在應用程式的所有相關聯專案中,具備必要的監控和帳單權限,才能建立報表。
讀取報表資料的權限
成功建立報表後,主體只需要 appoptimize.reports.getData 權限即可讀取產生的資料。這項權限可套用至報表建立所在的專案或報表本身,且「應用程式最佳化管理員」和「應用程式最佳化檢視者」角色都具備這項權限。
後續步驟
- 進一步瞭解 IAM 角色和權限。
- 瞭解如何製作報表。
- 參閱 App Optimize API 總覽。