go top

落實Data Access稽核,強化GCP雲端安全防線

技術文章 | 2025/06/27

在一次協助企業客戶進行雲端安全稽核的專案中,我們接到了一通急迫的電話。某部門的應用程式突然出現異常。團隊原本以為可以透過日誌追查異常來源,但當我們登入 GCP Console,查看 Cloud Audit Logs 時,卻發現了關鍵資源的 Data Access Logs 根本未啟用。

儘管 GCP 會預設記錄管理操作(Admin Activity Logs),但對於誰讀取、寫入或刪除資料這類「資料層級」的操作行為,如果未主動啟用 Data Access Logs,就無從得知是誰動了資料。沒有這些日誌紀錄,整個事件的來龍去脈只能靠猜測與交叉比對環境推論。

更令人擔憂的是,這家公司即將接受外部稽核,卻連最基本的資料存取軌跡都缺席,顯示他們對於「雲端稽核日誌」的重要性幾乎是全然陌生。

這起事件讓我們深刻意識到,在雲端架構下,未啟用 Data Access Logs,就等同於讓資料在黑箱中運作。GCP 雖然提供了完善的稽核日誌機制,但若沒有正確開啟與規劃,組織將面臨無法復原的風險與合規破口。


GCP 稽核日誌的分類方式

Google Cloud 的 Cloud Audit Logs(雲端稽核日誌)可以從兩個角度來分類:

【從用途分類】常見的總覽方式如下(三大類):


類型

說明

預設狀態

Admin Activity Logs

記錄資源的管理操作,例如建立、刪除 VM、修改 IAM。

預設啟用,不可關閉

Data Access Logs

記錄對資料的存取行為,如讀取或寫入 GCS、BigQuery。

預設關閉,需手動開啟

System Event Logs

系統層級的事件,如自動重啟、節點遷移。

自動啟用



【從資料存取行為細分】Data Access Logs 的子類型分類方式:


類型

說明

預設狀態

建議用途

Admin Read

讀取型管理操作,例如誰查看了 IAM 設定、API 設定頁面。

預設啟用

監控誰檢查了關鍵設定

Data Read

資料讀取行為,例如誰讀取了 Storage、BQ 資料。

預設關閉

機密資料讀取稽核

Data Write

資料寫入/變更行為,例如誰寫入、刪除、修改了資料。

預設關閉

關鍵資料變動追蹤



GCP Cloud Audit Logs(雲端稽核日誌)預設畫面:

說明 GCP 三大稽核日誌類型:1. Admin Activity Logs(管理員操作,預設啟用);2. Data Access Logs(資料存取,預設關閉);3. System Event Logs(系統事件,自動啟用)。圖中強調 Data Access Logs 包含 Admin Read、Data Read 與 Data Write 三種子類型,是監控機敏資料變動的關鍵。GCP 稽核日誌分類, Cloud Audit Logs, Data Access Logs 預設狀態, 管理員活動日誌, 雲力橘子技術文章


本次實作步驟如下:

【一】使用 GCE 預設服務將圖檔上傳至 GCS

◆ 模擬實際應用中對資料進行寫入的操作。


【二】透過 Cloud Logging 查找關鍵稽核記錄

◆ 確認上傳行為是否有對應日誌產出。


【三】啟用 Data Access Logs 的資料讀取與資料寫入項目

◆ 手動開啟預設未啟用的日誌類型,以捕捉後續操作紀錄。


【四】再次測試並查詢 Cloud Logging 中的操作記錄

◆ 比較啟用前後日誌內容差異,驗證稽核功能是否正常運作。


【五】分享實作完成後的心得與建議

◆ 總結啟用 Data Access Logs 的效益與注意事項。


【一】使用 GCE 預設服務將圖檔上傳至 GCS

1.創建GCE (name:gce-2025)

2.創建GCS (name:gcs-2025)

3.登入GCE並完成上傳image01.png至GCS (gsutil cp image01.png gs://gcs-2025)


展示在 Cloud Logging 中的 Logs Explorer 搜尋特定 GCS 物件存取紀錄。由於預設未啟用 Data Access Logs,系統顯示「無日誌資訊」,這突顯了當企業發生資料異常卻未開啟稽核功能時,將面臨調查證據缺失的風險。Cloud Logging 搜尋, 稽核紀錄缺失風險, Logs Explorer 實作, GCS 存取追蹤, 雲橘子資安知識


【二】透過 Cloud Logging 查找關鍵稽核記錄

1.進入Cloud Logging

2.於Logs Explorer輸入protoPayload.resourceName:"projects/_/buckets/gcs-2025/objects/image01.png"

3.確認無Log資訊


操作示範如何進入 GCP IAM 的「稽核紀錄」頁面,針對 Google Cloud Storage 勾選並儲存「資料讀取 (Data Read)」與「資料寫入 (Data Write)」選項。這是將安全防護從管理層級延伸到資料層級的必要設定步驟。啟用 Data Access Logs 教學, GCP IAM 設定, 稽核紀錄勾選, 強化雲端安全, 雲力橘子資安服務


【三】啟用 Data Access Logs 的資料讀取與資料寫入項目

1.進入IAM -> 稽核紀錄 -> 搜尋Storage

2.將Google Cloud Storage 〔資料讀取〕與〔資料寫入〕皆勾選並儲存(預設只有勾選管理員讀取)


顯示成功啟用稽核功能後的搜尋結果。在重新執行檔案上傳與移除操作後,Logs Explorer 清楚記錄了具體的讀寫行為、操作者身分與資源名稱。這些日誌為問題排查、內部稽核與外部合規提供了不可否認的證據。成功獲取稽核日誌, 資料存取軌跡, 可視化監控, 合規性證明, 雲力橘子技術專欄


【四】再次測試並查詢 Cloud Logging 中的操作記錄

1.登入GCE並完成移除與上傳image01.png至GCS

移除(gsutil rm gs://gcs-2025/image01.png)

上傳(gsutil cp image01.png gs://gcs-2025)

2.於Logs Explorer輸入protoPayload.resourceName:"projects/_/buckets/gcs-2025/objects/image01.png"

3.確認有Log資訊


操作示範如何進入 GCP IAM 的「稽核紀錄」頁面,針對 Google Cloud Storage 勾選並儲存「資料讀取 (Data Read)」與「資料寫入 (Data Write)」選項。這是將安全防護從管理層級延伸到資料層級的必要設定步驟。啟用 Data Access Logs 教學, GCP IAM 設定, 稽核紀錄勾選, 強化雲端安全, 雲力橘子資安服務

展示在 Cloud Logging 中的 Logs Explorer 搜尋特定 GCS 物件存取紀錄。由於預設未啟用 Data Access Logs,系統顯示「無日誌資訊」,這突顯了當企業發生資料異常卻未開啟稽核功能時,將面臨調查證據缺失的風險。Cloud Logging 搜尋, 稽核紀錄缺失風險, Logs Explorer 實作, GCS 存取追蹤, 雲橘子資安知識


【五】分享實作完成後的心得與建議

透過本次實作,我們明顯看出啟用 Data Access Logs 前後的差異。在尚未啟用的情況下,僅能看到管理層級的基本事件,無法追蹤實際資料存取行為;而啟用後,具體的讀寫操作便能清楚記錄,讓問題排查與稽核過程更具依據。

值得注意的是,GCP 預設並不啟用 Data Access Logs,這其實是出於以下幾項考量:

•控制儲存成本:資料存取操作頻繁,若預設開啟,容易產生大量日誌,占用儲存空間並產生額外費用。

•避免影響效能:全面啟用資料層級記錄可能影響日誌系統效能,GCP 選擇讓使用者依需求啟用,以保留彈性。

•符合共擔責任模型:GCP 提供功能,但是否啟用、如何配置,仍需使用者自行依風險與合規需求評估。


因此,在操作過程中也整理出幾項實作上的注意事項:

•需手動開啟:建議針對關鍵資源(如 GCS)主動啟用。

•記得查對日誌類型與時間範圍:啟用後需等待一段時間,查詢時也要選擇正確的日誌類別。

•關注日誌產生量:依存取頻率日誌量可能快速累積,建議搭配儲存期限與過濾策略。

總結來說,Data Access Logs 是雲端環境中關鍵的可視化與稽核工具。雖然預設未啟用,但只要正確配置,就能有效強化資料安全防線,降低日後調查與合規風險。