Secure Source Manager 稽核記錄

本文說明 Secure Source Manager 建立的稽核記錄,該記錄屬於 Cloud 稽核記錄的一部分。

總覽

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

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

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

可用的稽核記錄

Secure Source Manager 提供下列稽核記錄類型:

  • 管理員活動稽核記錄

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

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

  • 資料存取稽核記錄

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

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

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

已稽核的作業

下表摘要列出與 Secure Source Manager 中每個稽核記錄類型對應的 API 作業:

稽核記錄類別 Secure Source Manager 方法
管理員活動稽核記錄 SetIamPolicy
google.longrunning.Operations.CancelOperation
google.longrunning.Operations.DeleteOperation
google.cloud.securesourcemanager.v1.SecureSourceManager.CreateInstance
google.cloud.securesourcemanager.v1.SecureSourceManager.DeleteInstance
google.cloud.securesourcemanager.v1.SecureSourceManager.SetIamPolicyRepo
資料存取 (ADMIN_READ) 稽核記錄 GetIamPolicy
google.longrunning.Operations.ListOperations
google.longrunning.Operations.GetOperation
google.cloud.securesourcemanager.v1.SecureSourceManager.ListInstances
google.cloud.securesourcemanager.v1.SecureSourceManager.GetInstance
google.cloud.securesourcemanager.v1.SecureSourceManager.GetIamPolicyRepo
資料存取 (DATA_READ) 稽核記錄 google.cloud.securesourcemanager.v1.SecureSourceManager.IssueRedirectTicketInternal
google.cloud.securesourcemanager.v1.SecureSourceManager.ListRepositories
google.cloud.securesourcemanager.v1.SecureSourceManager.GetRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.AccessInstance
google.cloud.securesourcemanager.v1.SecureSourceManager.FetchRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.ReadPullRequest
google.cloud.securesourcemanager.v1.SecureSourceManager.ReadIssue
google.cloud.securesourcemanager.v1.SecureSourceManager.ListSshKeys
google.cloud.securesourcemanager.v1.SecureSourceManager.ListAnySshKeys
資料存取 (DATA_WRITE) 稽核記錄 google.cloud.securesourcemanager.v1.SecureSourceManager.CreateRepositoryInternal
google.cloud.securesourcemanager.v1.SecureSourceManager.DeleteRepositoryInternal
google.cloud.securesourcemanager.v1.SecureSourceManager.CreateRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.DeleteRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.CheckCreateRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.PushRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.UpdateRepository
google.cloud.securesourcemanager.v1.SecureSourceManager.WritePullRequest
google.cloud.securesourcemanager.v1.SecureSourceManager.WriteIssue
google.cloud.securesourcemanager.v1.SecureSourceManager.CreateSshKey
google.cloud.securesourcemanager.v1.SecureSourceManager.DeleteSshKey
google.cloud.securesourcemanager.v1.SecureSourceManager.CreateAnySshKey
google.cloud.securesourcemanager.v1.SecureSourceManager.DeleteAnySshKey

稽核記錄格式

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

  • 記錄項目本身,屬於 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

服務名稱

Secure Source Manager 稽核記錄會使用服務名稱 securesourcemanager.googleapis.com

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

資源類型

Secure Source Manager 稽核記錄使用的資源類型一律為 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 建構查詢」。

您可以使用 Logs Explorer 檢視及篩選個別記錄項目。如要使用 SQL 分析記錄項目群組,請使用「記錄檔分析」頁面。如需詳細資訊,請參閱:

使用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

建構查詢時,請在每個記錄檔名稱中提供有效的資源 ID。例如,如果查詢包含 PROJECT_ID,則您提供的專案 ID 必須參照目前選取的Google Cloud 專案。

例如,如要使用 Logging API 查看專案層級的稽核記錄項目,請按照下列步驟操作:

  1. 前往 entries.list 方法說明文件中的「Try this API」(試用這個 API) 部分。

  2. 將下列內容放入「Try this API」(試用這個 API) 表單的「Request body」(要求主體) 部分。按一下這份已預先填入資料的表單就能自動填入要求主體,但您必須在每個記錄檔名稱中提供有效的 PROJECT_ID

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. 按一下「Execute」(執行)

轉送稽核記錄

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

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

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

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

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

定價

如要進一步瞭解定價,請參閱「Google Cloud Observability 定價」頁面的 Cloud Logging 部分。