變更 IAM 建議設定後,您就能自訂角色建議的產生方式。本頁說明如何編輯設定,變更專案產生建議的速度。
雖然 IAM 建議工具會為各種資源產生角色建議,但您只能編輯專案的角色建議產生方式。
事前準備
-
Enable the Recommender API.
- 瞭解身分與存取權管理建議工具如何產生角色建議。
- 安裝 Google Cloud CLI。
必要的角色
如要取得設定 IAM 角色建議所需的權限,請要求管理員在您要設定 IAM 建議工具的專案中,授予下列 IAM 角色:
- 查看設定詳細資料: IAM 建議工具檢視者 (roles/recommender.iamViewer)
- 修改設定: IAM 建議工具管理員 (roles/recommender.iamAdmin)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義角色具備設定 IAM 角色建議所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要設定 IAM 角色建議,必須具備下列權限:
-
查看設定詳細資料:
recommender.iamPolicyRecommenderConfig.get
-
修改設定:
recommender.iamPolicyRecommenderConfig.update
查看目前的設定
查看目前的設定,瞭解 IAM 建議工具要等待幾天,才會根據權限使用資料產生角色建議。
您可以使用 gcloud CLI 或 REST API 查看設定。
gcloud
如要取得專案的 IAM 建議事項設定,請使用 gcloud beta recommender recommender-config describe
指令。
使用下方的任何指令資料之前,請先替換以下項目:
PROJECT_ID
:您的 Google Cloud 專案 ID。專案 ID 為英數字串,例如my-project
。
執行 gcloud beta recommender recommender-config describe 指令:
Linux、macOS 或 Cloud Shell
gcloud beta recommender recommender-config describe \ google.iam.policy.Recommender \ --project="PROJECT_ID" \ --location="global"
Windows (PowerShell)
gcloud beta recommender recommender-config describe ` google.iam.policy.Recommender ` --project="PROJECT_ID" ` --location="global"
Windows (cmd.exe)
gcloud beta recommender recommender-config describe ^ google.iam.policy.Recommender ^ --project="PROJECT_ID" ^ --location="global"
回應會包含專案的 IAM 推薦工具設定。舉例來說,檔案可能如下所示:
etag: '"d3e779ee3f34f276"' name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config recommenderGenerationConfig: params: minimum_observation_period: P90D revisionId: DEFAULT updateTime: '2022-10-02T22:57:33Z'
REST
如要取得專案的 IAM 建議工具設定,請使用 Recommender API 的
projects.locations.recommenders.getConfig
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_NUMBER
:您的 Google Cloud 專案的數字 ID。PROJECT_ID
:您的 Google Cloud 專案 ID。專案 ID 為英數字串,例如my-project
。
HTTP 方法和網址:
GET https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config
如要傳送要求,請展開以下其中一個選項:
回應會包含專案的 IAM 推薦工具設定。舉例來說,檔案可能如下所示:
{ "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config", "recommenderGenerationConfig": { "params": { "minimum_observation_period": "P90D" } }, "etag": "\"d3e779ee3f34f276\"", "updateTime": "2022-10-02T22:57:33Z", "revisionId": "DEFAULT" }
瞭解設定詳細資料
設定內容取決於設定適用的建議引擎。IAM 建議事項設定包含下列元件 (不一定會依此順序排列):
name
:設定的 ID,格式為projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config
。recommenderGenerationConfig
:IAM 建議工具產生建議時使用的參數。這個欄位包含下列參數:minimum_observation_period
:IAM 建議工具開始產生角色建議時,需要的天數權限使用資料。
etag
:設定目前狀態的 ID,用於防止並行更新。每次設定變更時,系統都會指派新的 ETag 值。updateTime
:最近一次更新設定的時間戳記,採用世界標準時間格式 (RFC 3339)。revisionId
:僅供輸出。目前設定修訂版本的 ID。每次編輯設定時,這個值都會更新。
編輯設定
編輯設定,即可變更系統為專案生成建議的速度。
gcloud
如要編輯專案的 IAM 建議工具設定,請使用 gcloud beta recommender recommender-config update
指令。
使用下方的任何指令資料之前,請先替換以下項目:
-
OBSERVATION_PERIOD
:要設定的最短觀察期。請使用下列其中一個值:P30D
(30 天)、P60D
(60 天) 或P90D
(90 天)。 -
ETAG
:設定目前的 etag,您可以取得目前的設定,然後複製回應的etag
欄位值。 PROJECT_ID
:您的 Google Cloud 專案 ID。專案 ID 為英數字串,例如my-project
。
將下列內容儲存到名為 request.json
的檔案:
{ "params": { "minimum_observation_period": "OBSERVATION_PERIOD" } }
執行 gcloud beta recommender recommender-config update 指令:
Linux、macOS 或 Cloud Shell
gcloud beta recommender recommender-config update \ google.iam.policy.Recommender \ --etag="ETAG" \ --project="PROJECT_ID" \ --location="global" \ --config-file="request.json"
Windows (PowerShell)
gcloud beta recommender recommender-config update ` google.iam.policy.Recommender ` --etag="ETAG" ` --project="PROJECT_ID" ` --location="global" ` --config-file="request.json"
Windows (cmd.exe)
gcloud beta recommender recommender-config update ^ google.iam.policy.Recommender ^ --etag="ETAG" ^ --project="PROJECT_ID" ^ --location="global" ^ --config-file="request.json"
回應會包含更新後的設定。例如:
etag: '"2549af0942332910"' name: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config recommenderGenerationConfig: params: minimum_observation_period: P60D revisionId: 288c60eb updateTime: '2022-10-05T21:42:21.069170Z'
REST
如要編輯專案的 IAM 建議事項設定,請使用 Recommender API 的 projects.locations.recommenders.updateConfig
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_NUMBER
:您的 Google Cloud 專案的數字 ID。-
OBSERVATION_PERIOD
:要設定的最短觀察期。請使用下列其中一個值:P30D
(30 天)、P60D
(60 天) 或P90D
(90 天)。 -
ETAG
:設定目前的 etag,您可以取得目前的設定,並複製回應的etag
欄位值,即可找到這個值。使用反斜線逸出引號,例如"\"df7308cca9719dcc\""
。 PROJECT_ID
:您的 Google Cloud 專案 ID。專案 ID 為英數字串,例如my-project
。
HTTP 方法和網址:
PATCH https://recommender.googleapis.com/v1beta1/projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config
JSON 要求主體:
{ "name": "projects/PROJECT_NUMBER/locations/global/recommenders/google.iam.policy.Recommender/config", "recommenderGenerationConfig": { "params": { "minimum_observation_period": "OBSERVATION_PERIOD" } }, "etag": "ETAG" }
如要傳送要求,請展開以下其中一個選項:
回應會包含更新後的設定。例如:
{ "name": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/config", "recommenderGenerationConfig": { "params": { "minimum_observation_period": "P60D" } }, "etag": "\"2549af0942332910\"", "updateTime": "2022-10-05T21:26:52.127512Z", "revisionId": "b5fc0053" }