查看 IAM 允許政策記錄

本頁說明如何查看 IAM 允許政策的變更記錄。

如要查看資源允許政策的變更,請在稽核記錄中搜尋含有 SetIamPolicy 方法的項目。

您也可以使用 Cloud Asset Inventory 查看允許政策變更。

查看允許政策異動 (SetIamPolicy)

如要查看允許政策變更,請查看稽核記錄中含有 SetIamPolicy 方法的項目。您可以使用Google Cloud 控制台或 gcloud CLI 查看稽核記錄。

控制台

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

    前往 Logs Explorer

  2. 在查詢編輯器中輸入下列任一查詢。這些查詢會搜尋稽核記錄,找出 protoPayloadmethodName 欄位中含有 SetIamPolicy 的項目:

    • 如要取得資源的所有允許政策變更記錄,請使用下列查詢:

      logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity"
      protoPayload.methodName:SetIamPolicy
      
    • 如要取得涉及特定使用者或服務帳戶的允許政策變更記錄,請使用下列查詢:

      logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity"
      protoPayload.methodName:SetIamPolicy
      protoPayload.serviceData.policyDelta.bindingDeltas.member:"EMAIL_ADDRESS"
      

      更改下列內容:

      • RESOURCE_TYPE:您要列出稽核記錄的資源類型。有效值為 projectsfoldersorganizations
      • RESOURCE_ID:您的 Google Cloud 專案、資料夾或機構 ID。專案 ID 為英數字元,例如 my-project。資料夾和機構 ID 都是數字,例如 123456789012
      • EMAIL_ADDRESS:使用者或服務帳戶的電子郵件地址,例如 example-service-account@example-project.iam.gserviceaccount.com
  3. 如要執行查詢,請按一下「執行查詢」

  4. 使用「時間軸」選取器,為查詢指定適當的時間範圍。或者,您也可以直接在查詢編輯器中新增時間戳記運算式。詳情請參閱「依時間範圍查看記錄」。

gcloud

gcloud logging read 指令會讀取記錄項目。

使用下列任何指令資料之前,請先替換以下項目:

  • RESOURCE_TYPE:要列出稽核記錄的資源類型。請使用 projectsfoldersorganizations 值。
  • RESOURCE_ID:您的 Google Cloud專案、機構或資料夾 ID。專案 ID 為英數字串,例如 my-project。資料夾和機構 ID 為數字,例如 123456789012
  • TIME_PERIOD:要列出稽核記錄的時間範圍。傳回的項目不會早於這個值。如未指定,則預設值為 1d。如要瞭解時間格式,請參閱 gcloud topic datetimes
  • RESOURCE_TYPE_SINGULAR:要列出稽核記錄的資源類型。請使用 projectfolderorganization 值。

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud logging read \
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' \
    --freshness=TIME_PERIOD \
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

Windows (PowerShell)

gcloud logging read `
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' `
    --freshness=TIME_PERIOD `
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

Windows (cmd.exe)

gcloud logging read ^
    'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity
    AND protoPayload.methodName=SetIamPolicy' ^
    --freshness=TIME_PERIOD ^
    --RESOURCE_TYPE_SINGULAR=RESOURCE_ID

使用 Cloud Asset Inventory 查看允許政策異動

您也可以在 Google Cloud 控制台或 gcloud CLI 中,使用 Cloud Asset Inventory 查看允許政策變更。

控制台

  1. 前往 Google Cloud 控制台的「資產清單」頁面。

    前往 Asset Inventory

  2. 按一下「IAM 政策」分頁標籤。

  3. 在「篩選器」欄位中執行下列查詢:

    Resource : RESOURCE_ID

    RESOURCE_ID 替換為專案、資料夾或機構 ID。 Google Cloud專案 ID 為英數字元,例如 my-project。資料夾和機構 ID 都是數字,例如 123456789012

  4. 如要查看資源允許政策的變更記錄,請按一下資源名稱,然後選取「變更記錄」分頁標籤。

  5. 如要比較資源的允許政策變更,請從「選取要比較的記錄」選單中選取兩個不同時間戳記的記錄。

gcloud

這項指令會取得資產上允許政策的更新記錄,這些政策與時間範圍重疊。gcloud asset get-history

使用下列任何指令資料之前,請先替換以下項目:

  • RESOURCE_TYPE:要列出稽核記錄的資源類型。請使用 projectfolderorganization 值。
  • RESOURCE_ID:您的 Google Cloud專案、機構或資料夾 ID。專案 ID 為英數字串,例如 my-project。資料夾和機構 ID 為數字,例如 123456789012
  • ASSET_NAME:以半形逗號分隔的格式化資源名稱清單,這些資源是您要查看允許政策記錄的對象。例如://cloudresourcemanager.googleapis.com/projects/my-project。這些資源可以是接受允許政策的任何資源類型。
  • START_TIME:時間範圍的開頭。時間範圍最長為 7 天。這個值必須是目前時間,或過去 35 天內的時間。如要瞭解時間格式,請參閱 gcloud topic datetimes
  • END_TIME:選用。時間範圍的結束時間。時間範圍最長為 7 天。這個值必須是目前時間,或過去 35 天內的時間。如未提供,系統會假設結束時間為目前時間。如要瞭解時間格式,請參閱 gcloud topic datetimes

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud asset get-history \
    --RESOURCE_TYPE=RESOURCE_ID \
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... \
    --content-type=iam-policy \
    --start-time=START_TIME \
    --end-time=END_TIME

Windows (PowerShell)

gcloud asset get-history `
    --RESOURCE_TYPE=RESOURCE_ID `
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... `
    --content-type=iam-policy `
    --start-time=START_TIME `
    --end-time=END_TIME

Windows (cmd.exe)

gcloud asset get-history ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --asset-names=ASSET_NAME_1,ASSET_NAME_2,... ^
    --content-type=iam-policy ^
    --start-time=START_TIME ^
    --end-time=END_TIME

回應會包含更新後的允許政策記錄。