本文說明如何設定 Cloud Logging 的預設資源設定。您可以透過這些設定,控管系統建立新記錄檔 bucket 的位置、記錄檔 bucket 是否必須使用 CMEK,以及 _Default 記錄檔接收器的設定。您可以為機構和資料夾設定這些設定,子項資源會沿用這些設定。您可以使用 Google Cloud CLI 設定 Cloud Logging 的預設資源設定。
總覽
機構資源位於Google Cloud 資源階層的最高層級。機構資源是下列子項資源的父項:Google Cloud 專案、資料夾、帳單帳戶,以及與記錄相關的記錄儲存空間。
對於機構和資料夾,您可以設定 Cloud Logging 的預設資源設定。您可以透過這些設定指定記錄值區的位置、加密模型,以及預設記錄接收器的設定。子項資源會沿用父項資源的預設資源設定。
您可以透過 Cloud Logging 的預設資源設定,設定下列項目:
資源中的新記錄檔儲存空間是否要以客戶管理的金鑰加密,如果要,則用於加密的 Cloud KMS 金鑰。
子項資源建立的新
_Default和_Required記錄檔值區,以及 Logs Explorer 或記錄檔分析頁面儲存的查詢。設定儲存位置後,即可控管記錄的儲存位置。如果資源的 Cloud Logging 預設資源設定指定了儲存位置,但沒有 CMEK 設定,則資源中的新記錄值區不需要 CMEK。
資源中新專案的
_Default記錄接收器是否啟用。套用至子項資源中所有新
_Default接收器的包含或排除篩選器。
設定範例:
- 對於機構,Cloud Logging 的預設資源設定會指定儲存位置。
對於機構中的新專案,系統會在指定位置建立
_Default和_Required記錄值區。 此外,記錄檔探索工具或記錄檔分析頁面儲存的查詢會存放在指定位置。這些查詢包括執行後自動儲存的近期查詢,以及Google Cloud 專案成員儲存的查詢。
對於機構,Cloud Logging 的預設資源設定會指定儲存位置。 此外,如果是機構中的資料夾,Cloud Logging 的預設資源設定會指定不同的儲存位置。如果是資料夾中的新專案,系統會在資料夾設定指定的位置建立
_Default和_Required值區。如果專案不在資料夾中,系統會在機構設定指定的位置建立_Default和_Required值區。如果是機構,您可以設定 Cloud Logging 的預設資源設定,指定位置和 CMEK。針對名為
Non-CMEK的資料夾,您可設定 Cloud Logging 的預設資源設定,只指定位置。如果您建立的專案不在名為Non-CMEK的資料夾中,系統會在與 Cloud Key Management Service 金鑰相同的位置建立_Default和_Required值區,並使用該金鑰加密這些記錄值區。不過,如果您在名為Non-CMEK的資料夾中建立新專案,系統會在該資料夾設定指定的位置建立記錄值區,且這些記錄值區不會透過 CMEK 加密。如果是組織,您可以設定 Cloud Logging 的預設資源設定,套用適用於新
_Default接收器的排除篩選器。這項篩選條件會排除所有子資源中透過_Default接收器傳送的資料存取稽核記錄,防止資料存取稽核記錄儲存在_Defaultbucket 中。
事前準備
本文未說明如何設定 Cloud Logging 的預設資源設定,以使用 CMEK 設定。如要瞭解該主題,請參閱「為 Logging 設定 CMEK」。
請執行下列步驟:
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
確認您在機構或資料夾中的 Identity and Access Management 角色包含下列 Cloud Logging 權限:
logging.settings.getlogging.settings.update
找出要儲存記錄和查詢的位置。 如需支援的儲存位置清單,請參閱「支援的地區」。
- FOLDER_ID:資料夾的專屬數字 ID。如要瞭解如何使用資料夾,請參閱「建立及管理資料夾」。
- ORGANIZATION_ID:組織的專屬數字 ID。如要瞭解如何取得這個 ID,請參閱「取得機構 ID」。
- 在機構或資料夾中建立的新子項資源,其
_Required和_Default值區會繼承父項的預設資源設定。 - 指定您在「Logs Explorer」或「記錄檔分析」頁面中執行的新查詢和近期查詢的儲存位置。
-
前往 Google Cloud 控制台的「Organization Policies」(機構政策) 頁面:
前往「Organization Policies」(機構政策)
如果您是使用搜尋列尋找這個頁面,請選取子標題為「IAM & Admin」(IAM 與管理) 的結果。
選取您的機構。
查看並視需要更新 ID 為
constraints/gcp.resourceLocations的限制。如果未設定這項限制,就不需要更新。如要瞭解如何查看特定限制,以及如何編輯這些限制,請參閱「建立及編輯政策」。
您可以禁止為新的子項資源建立
_Default接收器。您可以設定適用於新專案
_Default接收器的納入篩選器或多個排除篩選器。- FOLDER_ID:資料夾的專屬數字 ID。如要瞭解如何使用資料夾,請參閱「建立及管理資料夾」。
- ORGANIZATION_ID:組織的專屬數字 ID。如要瞭解如何取得這個 ID,請參閱「取得機構 ID」。
- 名稱 (網址):
organizations/ORGANIZATION_ID/settings - updateMask:
"default_sink_config" 要求主體,其中包含
Settings的例項:"defaultSinkConfig": { { "filter": "NOT LOG_ID(\"externalaudit.googleapis.com/activity\") " "AND NOT LOG_ID(\"cloudaudit.googleapis.com/system_event\") " "AND NOT LOG_ID(\"externalaudit.googleapis.com/system_event\") " "AND NOT LOG_ID(\"cloudaudit.googleapis.com/access_transparency\") " "AND NOT LOG_ID(\"externalaudit.googleapis.com/access_transparency\") ", "exclusions": [ { "name": "exclude-data-access", "description": "Prevents Data Access audit logs from being routed", "filter": "log_id(\"cloudaudit.googleapis.com/data_access\")", } ], "mode": OVERWRITE } }
查看 Cloud Logging 的預設資源設定
如要查看 Cloud Logging 的預設資源設定,請使用 gcloud logging settings describe 指令:
資料夾
gcloud logging settings describe --folder=FOLDER_ID
執行上一個指令前,請進行下列替換:
機構
gcloud logging settings describe --organization=ORGANIZATION_ID
執行上一個指令前,請進行下列替換:
先前的指令會傳回 Cloud Logging 的預設資源設定相關資訊。以下是回應範例:
name: organizations/ORGANIZATION_ID/settings kmsKeyName: KMS_KEY_NAME kmsServiceAccountId: SERVICE_ACCT_NAME@gcp-sa-logging.iam.gserviceaccount.com storageLocation: europe-west1 disableDefaultSink: false
SERVICE_ACCT_NAME 的值可能採用 cmek-12345 或 service-12345@... 格式。如果無法使用 Google Cloud CLI,請執行 Cloud Logging API 方法 getSettings。
設定儲存位置
記錄檔 bucket 是Google Cloud 專案、帳單帳戶、資料夾和機構中的容器,用於儲存及整理記錄檔資料。針對每個 Google Cloud 專案、帳單帳戶、資料夾和機構,Logging 會自動建立兩個記錄檔值區:_Required 和 _Default,並自動儲存在 global 位置。
對於機構和資料夾,Cloud Logging 的預設資源設定會控管新 _Required 和 _Default 記錄 bucket 的建立位置,以及您在「記錄檔探索工具」和「記錄檔分析」頁面中執行的查詢儲存位置。現有查詢和記錄檔儲存區的位置不會變更。
為機構和資料夾設定 Cloud Logging 的預設資源設定,指定位置時會發生下列情況:
如果 Cloud Logging 的預設資源設定指定了位置,該位置不會套用至使用者定義的記錄檔 bucket,也不會套用至使用 Logging API 儲存的查詢。
設定機構政策
記錄功能支援機構政策,可限制資料的儲存位置。如果貴機構有這類政策,您就只能在政策允許的位置建立記錄檔儲存空間。
如果存在指定位置限制的組織政策,限制的政策值必須包含 Cloud Logging 預設資源設定中指定的位置。更新 Cloud Logging 的預設資源設定前,請先檢查機構政策,並視需要更新。
如要查看或更新機構政策,請按照下列步驟操作:
設定系統建立的新記錄 bucket 儲存位置
如要設定 Cloud Logging 的預設資源設定,指定位置設定,請執行 gcloud logging settings update 指令,並加入 --storage-location 旗標:
資料夾
gcloud logging settings update --folder=FOLDER_ID--storage-location=LOCATION
執行上一個指令前,請先進行下列替換:
機構
gcloud logging settings update --organization=ORGANIZATION_ID --storage-location=LOCATION
執行上一個指令前,請先進行下列替換:
如果無法使用 Google Cloud CLI,請執行 Cloud Logging API 方法 updateSettings。
如要瞭解如何解決錯誤,請參閱「排解為系統建立的新記錄值區設定位置的問題」。
設定 _Default 接收器
Logging 會為每個Google Cloud 專案、帳單帳戶、資料夾和機構資源提供預先定義的_Default接收器。凡是在符合納入篩選條件的資源中產生,且未遭排除的記錄,都會傳送至資源預先定義的 _Default 值區,並以相應名稱命名。
對於機構和資料夾,Cloud Logging 的預設資源設定可讓您設定 _Default 接收器的下列行為:
停用 _Default 接收器
您可以為機構或資料夾中的所有新資源停用 _Default 接收器;停用 _Default 接收器後,系統就不會將記錄儲存在資源的 _Default bucket 中。如果您停止將記錄檔儲存在資源的 _Default bucket 中,系統就會從 Logging 儲存作業排除原本會轉送至該 bucket 的記錄檔,除非這些記錄檔明確包含在該資源的其他使用者定義接收器中。
如要為資源及其所有子項資源停用 _Default 接收器,請執行下列 gcloud logging settings update 指令:
資料夾
gcloud logging settings update --folder=FOLDER_ID--disable-default-sink
執行上一個指令前,請進行下列替換:
機構
gcloud logging settings update --organization=ORGANIZATION_ID --disable-default-sink
執行上一個指令前,請進行下列替換:
disable-default-sink 旗標僅適用於將記錄檔傳送至 _Default 值區的 _Default 接收器。
如要重新啟用 _Default 接收器,請執行下列 gcloud logging settings update 指令:
資料夾
gcloud logging settings update --folder=FOLDER_ID--no-disable-default-sink
機構
gcloud logging settings update --organization=ORGANIZATION_ID --no-disable-default-sink
設定 _Default 接收器的篩選器
預先定義的 _Default 接收器會將符合接收器條件的任何記錄項目,傳送至對應的 _Default 值區。您可以傳送 Cloud Logging API 指令,覆寫 _Default 接收器中的內建排除篩選器,或附加篩選器。_Default 接收器的內建排除篩選器沒有內容。不過,您也可以使用 API 指令新增排除篩選器。
如要指定套用至機構或資料夾中新資源所有 _Default 接收器的納入或排除篩選器,請執行 Cloud Logging API 方法 updateSettings,並指定 defaultSinkConfig 物件。
您可以使用方法參考資料頁面上的 APIs Explorer 小工具,執行 updateSettings 方法。以下範例說明範例參數:
_Default 接收器的內建納入篩選器包含 AND NOT LOG_ID("externalaudit.googleapis.com/activity") 陳述式,可防止管理員活動稽核記錄轉送至 _Default 記錄檔 bucket。在上一個範例中,包含篩選器已變更,因此管理員活動稽核記錄會轉送至 _Default 記錄檔值區。範例也會新增排除篩選器,防止資料存取稽核記錄傳送至 _Default bucket。在上述範例中,排除篩選器名為 exclude-data-access。
排解設定錯誤
如需疑難排解資訊,請參閱「排解 Cloud Logging 的 CMEK 和預設資源設定」。