使用稽核記錄監控存取權

本文說明 Memorystore for Valkey 在 Cloud 稽核記錄中建立的稽核記錄。

總覽

Google Cloud 服務會寫入稽核記錄,協助您回答 Google Cloud 資源中「人事時地物」等問題。

Google Cloud 專案的稽核記錄都僅涵蓋直接隸屬於 Google Cloud 專案的資源。資料夾、組織和帳單帳戶等其他 Google Cloud 資源也各有其實體的稽核記錄。

如需 Cloud 稽核記錄的概要總覽,請參閱「Cloud 稽核記錄總覽」。如要深入瞭解稽核記錄格式,請參閱「瞭解稽核記錄」。

可用的稽核記錄

Memorystore for Valkey 提供下列稽核記錄類型:

  • 管理員活動稽核記錄

    包括寫入中繼資料或設定資訊的「管理員寫入」作業。

    您無法停用管理員活動稽核記錄。

  • 資料存取稽核記錄

    包括讀取中繼資料或設定資訊的「管理員讀取」作業。也包括讀取或寫入使用者提供資料的「資料讀取」和「資料寫入」作業。

    如要接收資料存取稽核記錄,您必須明確啟用這類記錄。

如需稽核記錄類型的完整說明,請參閱「稽核記錄類型」。

已稽核的作業

下表摘要列出與 Memorystore for Valkey 中每個稽核記錄類型對應的 API 作業:

稽核記錄類別 Memorystore for Valkey 作業
管理員活動 執行個體之操作:
  • CreateInstance
  • DeleteInstance
  • UpdateInstance

以權杖為基礎的基本驗證作業:
  • AddTokenAuthUser
  • DeleteTokenAuthUser
  • AddAuthToken
  • DeleteAuthToken
資料存取 (ADMIN_READ) 執行個體之操作:
  • GetInstance
  • ListInstances

以權杖為基礎的基本驗證作業:
  • ListTokenAuthUsers
  • GetTokenAuthUser
  • ListAuthTokens
  • GetAuthToken

稽核記錄格式

稽核記錄項目包含下列物件:

  • 記錄項目本身,屬於 LogEntry 類型的物件。實用的欄位包括:

    • logName 包含資源 ID 和稽核記錄類型。資源可以是專案、資料夾、組織或帳單帳戶。
    • resource 包含稽核作業的目標。
    • timeStamp 包含稽核作業的時間。
    • protoPayload 包含稽核的資訊。
  • 稽核記錄資料,這是儲存在記錄項目 protoPayload 欄位中的 AuditLog 物件。

    • @type 欄位設為 "type.googleapis.com/google.cloud.audit.AuditLog"
    • serviceName 欄位會指出寫入稽核記錄的服務。此欄位的格式視服務而定。
  • 選用服務專屬稽核資訊,這是服務專屬物件。如果是較早的整合,這個物件會儲存在 AuditLog 物件的 serviceData 欄位中;較新的整合則使用 metadata 欄位。

如要瞭解這些物件中的其他欄位,以及如何解讀這些資料,請參閱「瞭解稽核記錄」。

記錄檔名稱

Cloud 稽核記錄的記錄檔名稱包含資源 ID,指出擁有稽核記錄的Google Cloud 專案或其他 Google Cloud 實體,以及記錄檔包含的是管理員活動、資料存取權、政策遭拒或系統事件稽核記錄資料。

以下是稽核記錄名稱,包括資源 ID 的變數:

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Factivity
   billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

服務名稱

Memorystore for Valkey 稽核記錄會使用服務名稱 memorystore.googleapis.com

如需所有 Cloud Logging API 服務名稱及其對應受監控資源類型的清單,請參閱「將服務對應至資源」。

資源類型

Memorystore for Valkey 稽核記錄一律使用 audited_resource 做為資源類型,因為這樣可以監控多種不同類型的資源。

如需所有 Cloud Logging 受監控資源類型和說明資訊的清單,請參閱「受監控資源類型」。

呼叫端身分

呼叫端的 IP 位址會儲存在 AuditLog 物件的 RequestMetadata.caller_ip 欄位中。Logging 可能會遮蓋特定呼叫端身分和 IP 位址。

如要瞭解稽核記錄中會遮蓋哪些資訊,請參閱「稽核記錄中的呼叫端身分」。

啟用稽核記錄

系統一律會啟用管理員活動稽核記錄,且該記錄無法停用。

資料存取稽核記錄預設為停用,且除非明確啟用,否則系統不會寫入這類記錄。唯一的例外是 BigQuery 的資料存取稽核記錄,該記錄無法停用。

如要瞭解如何啟用部分或所有資料存取稽核記錄,請參閱「啟用資料存取稽核記錄」。

權限與角色

IAM 權限與角色會決定您能否存取 Google Cloud 資源中的稽核記錄資料。

決定要將哪些 Logging 專用權限與角色套用至您的用途時,請考量下列事項:

  • 「記錄檢視者」角色 (roles/logging.viewer) 可讓您以唯讀存取管理員活動、政策遭拒和系統事件稽核記錄。如果您只有這個角色,就無法查看 _Default bucket 中的資料存取稽核記錄。

  • 「私人記錄檢視者」角色 (roles/logging.privateLogViewer) 包含 roles/logging.viewer 中的權限,外加讀取 _Default bucket 中資料存取稽核記錄的權限。

    請注意,如果這些私人記錄檔儲存在使用者定義的 bucket 中,則任何有權讀取這些 bucket 中記錄檔的使用者,都能讀取私人記錄檔。如要進一步瞭解記錄檔 bucket,請參閱「轉送功能和儲存空間簡介」。

如要進一步瞭解適用於稽核記錄資料的 IAM 權限與角色,請參閱「使用 IAM 控管存取」。

查看記錄

您可以查詢所有稽核記錄,也可以依稽核記錄名稱查詢記錄檔。稽核記錄名稱包含您要查看稽核記錄資訊的 Google Cloud 專案、資料夾、帳單帳戶或組織的資源 ID。查詢可以指定已建立索引的 LogEntry 欄位。如要進一步瞭解如何查詢記錄檔,請參閱「透過 Logs Explorer 建構查詢」。

使用Google Cloud 控制台、Google Cloud CLI 或 Logging API,在 Cloud Logging 中查看大部分的稽核記錄。不過,如要查看與帳單相關的稽核記錄,只能使用 Google Cloud CLI 或 Logging API。

控制台

在 Google Cloud 控制台中,可以使用 Logs Explorer 擷取 Google Cloud 專案、資料夾或組織的稽核記錄項目:

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

    前往「Logs Explorer」(記錄檔探索工具)

    如果是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果

  2. 選取現有的 Google Cloud 專案、資料夾或組織。

  3. 如要顯示所有稽核記錄,請在查詢編輯器欄位中輸入下列任一查詢,然後按一下「Run query」(執行查詢)

    logName:"cloudaudit.googleapis.com"
    
    protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
    
  4. 如要顯示特定資源和稽核記錄類型的稽核記錄,請在「Query builder」(查詢建立工具) 窗格中執行下列操作:

    • 在「Resource type」(資源類型) 中,選取要查看稽核記錄的 Google Cloud 資源。

    • 在「Log name」(記錄檔名稱) 中,選取要查看的稽核記錄類型:

      • 如要查看管理員活動稽核記錄,請選取「activity」(活動)
      • 如要查看資料存取稽核記錄,請選取「data_access」
      • 如要查看系統事件稽核記錄,請選取「system_event」
      • 如要查看政策遭拒稽核記錄,請選取「policy」(政策)
    • 按一下「Run query」(執行查詢)

    如果沒有看到這些選項,表示 Google Cloud 專案、資料夾或組織中沒有這類型的稽核記錄。

    如果無法在 Logs Explorer 中查看記錄檔,請參閱疑難排解資訊。

    如要進一步瞭解如何使用 Logs Explorer 查詢,請參閱「透過 Logs Explorer 建構查詢」。

gcloud

Google Cloud CLI 提供 Logging API 的指令列介面,並在每個記錄檔名稱中提供有效的資源 ID。例如,如果查詢包含 PROJECT_ID,則您提供的專案 ID 必須參照目前選取的Google Cloud 專案。

如要讀取 Google Cloud 專案層級的稽核記錄項目,請執行下列指令:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \
    --project=PROJECT_ID

如要讀取資料夾層級的稽核記錄項目,請執行下列指令:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \
    --folder=FOLDER_ID

如要讀取組織層級的稽核記錄項目,請執行下列指令:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \
    --organization=ORGANIZATION_ID

如要讀取 Cloud Billing 帳戶層級的稽核記錄項目,請執行下列指令:

gcloud logging read "logName : billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com" \
    --billing-account=BILLING_ACCOUNT_ID

在指令中加入 --freshness 旗標,即可讀取超過 1 天的記錄檔。

如要進一步瞭解如何使用 gcloud CLI,請參閱 gcloud logging read

REST

如要使用 Cloud Logging API 查詢記錄檔資料,請使用 entries.list 方法。

轉送稽核記錄

您可以採用與轉送其他類型記錄檔相同的方式,轉送稽核記錄至支援的目的地。以下列舉幾個可能需要轉送稽核記錄的原因:

  • 如要長時間保留稽核記錄,或使用更強大的搜尋功能,您可以將稽核記錄的副本轉送至 Cloud Storage、BigQuery 或 Pub/Sub。您可以使用 Pub/Sub 轉送至其他應用程式、其他存放區或第三方。

  • 如要管理整個組織的稽核記錄,您可以建立匯總接收器,從組織的任何或所有 Google Cloud 專案轉送記錄檔。

  • 如果已啟用的資料存取稽核記錄導致Google Cloud 專案超過記錄配額,您可以建立接收器,將資料存取稽核紀錄從 Logging 中排除。

如需轉送記錄檔的操作說明,請參閱「轉送記錄檔至支援的目的地」。