Apigee Hybrid 稽核記錄資訊

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

總覽

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

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

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

可用的稽核記錄

Apigee Hybrid 提供下列稽核記錄類型:

  • 管理員活動稽核記錄

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

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

  • 資料存取稽核記錄

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

    您無法停用資料存取稽核記錄。不過,您可以停用 Cloud Logging 的 _Default 接收器,防止系統儲存這些稽核記錄。

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

已稽核的作業

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

稽核記錄類別 Apigee hybrid 作業
管理員活動稽核記錄 CREATE
UPDATE
DELETE
資料存取稽核記錄 GET
LIST

稽核記錄格式

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

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

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

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

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

記錄檔名稱

Cloud 稽核記錄的記錄檔名稱包含資源 ID,指出擁有稽核記錄的雲端專案或其他 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

服務名稱

Apigee Hybrid 稽核記錄會使用服務名稱 apigee.googleapis.com

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

資源類型

Apigee Hybrid 稽核記錄使用的資源類型一律為 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 控管存取」。

查看記錄

您可以查詢所有稽核記錄,也可以依稽核記錄名稱查詢記錄檔。稽核記錄名稱包含您要查看稽核記錄資訊的雲端專案、資料夾、帳單帳戶或組織的資源 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 擷取 Cloud 專案、資料夾或組織的稽核記錄項目:

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

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

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

  2. 選取現有的雲端專案、資料夾或機構。

  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」(政策)
    • 點選「執行查詢」

    如果沒有看到這些選項,表示雲端專案、資料夾或機構中沒有這類型的稽核記錄。

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

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

gcloud

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

如要讀取 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 必須參照目前選取的雲端專案。

例如,如要使用 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」(執行)

舉例來說,如要查看 Apigee Hybrid 的所有專案層級稽核記錄,請使用下列查詢,並在每個記錄檔名稱中提供有效的資源 ID:

logName="projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity"
OR "projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access"
protoPayload.serviceName="apigee.googleapis.com"

轉送稽核記錄

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

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

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

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

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

定價

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