GCP 就該這樣用!Google Cloud Audit Logging 的最佳實踐

文章推薦指數: 80 %
投票人數:10人

Audit Logging 主要功能與關鍵實踐介紹身為一位稽核人員,您可能要花費許多時間檢閱log。

Goo … Continue reading "GCP 就該這樣用! × Skiptocontent AuditLogging主要功能與關鍵實踐介紹 身為一位稽核人員,您可能要花費許多時間檢閱log。

GoogleCloudAuditLogging是GoogleStackdriver這套產品中不可或缺的一部分,了解它的運作原理以及如何部署在GoogleCloudPlatform(GCP)上是必備的關鍵技能。

在本篇文章中,會討論CloudAuditLogging的主要功能,並提出一些最佳的作法。

在使用CloudAuditLogging時,首先要知道的是每個項目都包含兩種記錄: 1.稽核紀錄(adminactivity) 2.數據存取紀錄(dataaccess) 產生這些記錄的目的是幫助您了解「何人在何時何地在您的GCP項目中做了甚麼」。

而這些記錄和您的應用程式記錄是不同的。

稽核紀錄包含API使用記錄和更改資源設定或數據有關的管理操作。

管理活動的記錄是24小時運作且不收費的,記錄會保留13個月(即400天)。

數據存取記錄記載有關創建、修改或讀取用戶數據的API使用情況。

數據的存取預設是不記錄的,因為資料量可能會變得非常大。

為了供您參考,以下是GCP產生的稽核記錄的完整列表。

設定和查看稽核記錄 CloudAuditLogging入門很簡單。

有些服務預設為啟用狀態,有些則僅需點擊幾下即可運行。

以下是如何建立、設定和使用各種CloudAuditLogging功能的介紹: 設定蒐集稽核記錄 管理活動記錄預設是啟動的,因此,您不需要做任何動作系統就會自動記錄管理活動,然而,除了BigQuery外,數據存取記錄預設是不啟動的,您可以根據ConfiguringDataAccessLogs(設定稽核記錄的收集)中的詳細步驟來啟動它。

數據存取記錄的一個最佳使用實踐是在讓開發人員和生產專案使用之前,用測試項目來驗證數據存取稽核記錄的收集設定是否正確。

如果您的IAM控制設定錯誤,您可能無法存取您的專案。

查看稽核記錄 可以從GCP管理主控台裡的兩個地方查看稽核記錄:經由動態饋送可查看條列式的活動摘要,或從StackdriverLogs中的viewerpage查看完整的活動記錄 權限 您應該將存取稽核記錄視為敏感的動作,並設定適當的存取控制,您可以使用IAM的身分管理系統限制稽核記錄的存取權限。

要查看記錄,必須為管理活動記錄的人員授予IAMloggingviewer角色,如果要查看數據存取記錄需要授予logging.privateLogViewer。

在為CloudAuditLogging設定身分的存取權限時,此篇教學會介紹一些典型情況,並提供有關如何設定IAM的教學,以解決對存取稽核記錄的控制需求。

確定您已使用適當的IAM限制可存取稽核記錄的人員是最佳的做法之一。

查看動態饋送 您可以在管理主控台的動態頁面上查看所有稽核記錄的概要。

點擊想進一步了解的項目,以顯示該事件的詳細視圖,如下圖所示: 預設狀態下,此活動饋送是不會顯示數據存取記錄的,如果希望記錄顯示,請到篩選設定面板,並選擇類別中“DataAccess”的欄位(請注意,您必須擁有PrivateLogsViewerIAM授權才能查看數據存取記錄)。

透過StackdriverLogsviewer查看稽核記錄 您可以透過StackdriverLogsViewer查看稽核記錄的詳細條目。

您可以在LogsViewer中過濾記錄或做全文檢索找到需要的稽核記錄,並根據資源類型和記錄名稱選擇要看的記錄。

以下的例子以JSON格式顯示一些記錄條目,並將一些重要的部分特別標示。

篩選稽核記錄 Stackdriver提供了基本和進階的記錄篩選功能。

基本的篩選功能允許您依照資源類型和日期/時間篩選Feed中顯示的結果。

進階的記錄篩選功能以布林表現式指定您項目中所有記錄條目的子集。

您可以用它來選擇記錄條目: •  從特定的記錄或記錄服務 •  在給定的時間範圍內 •  滿足元數據或使用者定義字段的條件 •  代表所有記錄條目的抽樣百分比  以下篩選是要找出由CloudIAMAPI所呼叫的所有方法中名為SetIamPolicy的方法: resource.type="project" logName="projects/a-project-id-here/logs/cloudaudit.googleapis.com%2Factivity" protoPayload.methodName="SetIamPolicy" 以下是記錄條目的片段,顯示SetIamPolicy方法的呼叫是為了要授予AliceBigQuery數據查看器IAM角色。

resourceName:"projects/a-project-id-here"  response:{  @type:"type.googleapis.com/google.iam.v1.Policy"    bindings:[   0:{    members:[     0:"user:[email protected]"         ]    role:"roles/bigquery.dataViewer"       } 輸出記錄 記錄條目在StackdriverLogging中的保留時間是有限的,稱作保留期限,超過保留期限記錄條目將會被刪除。

如果想要繼續保留記錄條目,您必須藉由配置記錄接收槽將記錄輸出到StackdriverLogging外。

接收槽包含目的地和用來選擇要輸出的記錄條目的篩選器,並由以下屬性組成: •  接收槽識別符:接收槽的名稱 •  父資源:父資源是您創建接收槽的地方,它可以是一個項目、資料夾、結算帳戶或組織 •  記錄篩選器:負責篩選要從接收槽輸出的記錄條目,讓您可以彈性地選擇要輸出所有記錄或特定記錄 •  目的地:放置符合篩選條件的記錄條目。

StackdriverLogging支援三個目的地:GoogleCloudStoragebuckets、BigQuerydatasets和CloudPub/Subtopics •  編寫者身分:被授權能寫入目的地的服務帳戶 您必須要先配置記錄接收槽才能接收記錄,並且要注意,在接收槽創建前輸出的記錄是不可追朔的。

處理記錄的另一項功能AggregatedExports,它讓您能在CloudIAM組織或資料夾級別設立接收槽,並從組織或資料夾內的所有項目中輸出稽核記錄。

例如:以下的gcloud指令是將您整個組織中所有的管理活動記錄輸出到單一BigQuery接收槽中。

$gcloudloggingsinkscreatemy-bq-sink bigquery.googleapis.com/projects/my-project/datasets/my_dataset --log-filter='logName:"logs/cloudaudit.googleapis.com%2Factivity"' --organization=1234--include-children 請注意,匯總輸出接收槽有時會輸出非常多的記錄條目,因此在設計匯總輸出輸出您想要儲存的資料時,請注意以下幾點最佳實踐方法: •  確保記錄有確實輸出以獲得更長的保留時間 •  確保針對輸出接收槽的目的有設置適當的IAM控制 •  為您的組織設計匯總輸出,用來篩選和輸出對未來分析有助益的數據 •  在開始接收記錄前配置記錄接收槽 •  遵循此篇文章中對常見記錄輸出方案的最佳做法 排除管理 StackdriverLogging提供了排除篩選器,讓您可以完全排除特定產品的特殊記錄訊息或符合特定查詢的訊息。

您也可以選擇只採樣某些訊息,以便只有一部分訊息出現在StackdriverLogsViewer中。

排除的記錄條目不列入提供給項目的StackdriverLogging記錄配額。

在排除記錄條目前,也可以輸出記錄條目。

更多相關資訊請參閱輸出記錄。

排除這種干擾不僅會讓查看記錄變得更容易,還可以讓您減少每個月記錄配額的費用。

最佳實踐: 確保您使用排除篩選器來排除無用的日誌數據。

例如,您不需要在開發項目中記錄數據存取記錄。

儲存數據存取記錄是一項付費服務(請參閱我們的記錄配額和涵蓋費用),因此記錄多餘的數據會導致不必要的開銷 重點提醒 雲端稽核記錄是功能強大的工具,可幫助您管理和檢修GCP環境,並展示合規性。

在開始設置您的記錄環境時,請記住以下幾點最佳實踐: •  在讓開發人員和生產項目使用前,以測試項目來驗證數據存取稽核集合的配置 •  確保您已設定適當的IAM控件限制可以存取稽核記錄的人員 •  確定是否需要輸出記錄以保留較長的時間 •  針對輸出接收槽的目的地設置適當的IAM控件 •  設計匯總輸出,讓您的組織可以篩選和輸出數據供未來分析使用 •  在開始接收記錄前配置記錄接收槽 •  遵循此篇文章中對常見記錄輸出方案的最佳做法 •  確保使用排除篩選器來排除無用的記錄數據。

本篇文章翻譯自:https://cloudplatform.googleblog.com/2018/03/best-practices-for-working-with-Google-Cloud-Audit-Logging.html   文章導覽 PreviousPreviouspost:IBMWatson及其他AI解決方案–GooglevsAmazonvsMicrosoftAI比較大全(五)NextNextpost:【GoogleCloudOnBoard成功案例】知名手遊七龍珠如何透過GCP重現經典召喚神龍! 訂閱電子報 掌握第一手雲端與AI技術資訊,立刻訂閱iKalaCloud電子報! 立即訂閱 站內搜尋 Searchfor: Search iKalaCloud 近期文章 善用CCAIInsights和ContractDocAI加速人工處理作業 「分散式雲端」來臨!GoogleDistributedCloud將基礎架構擴展至自有資料中心、邊緣位置 想打造出色的串流影音產品?掌握這幾項網路設置重點,優化LIVE影片播送! 【實用教學】4種方法,將資料傳輸到GoogleCloud 如何透過Anthos簡化混合雲與多雲部署? 文章分類 AI與機器學習(41) 基礎架構(59) 應用程式現代化(28) 最新消息與洞察(52) 生產力與協作(6) 產業解決方案(54) 資料管理與分析(43) 資訊安全(23) 標籤雲AI Anthos API Apigee APIM AutoML AWS Azure BigQuery Bigtable CloudArmor CloudFunctions CloudMonitoring CloudPub/Sub CloudStorage Dataflow DNS GAE GCE GCP GKE GoogleAnalytics GoogleCloud GoogleKubernetesEngine GoogleMeet GSuite Kubernetes Loadbalancing Migration NetworkIntelligenceCenter Pub/Sub Security Stackdriver Tensorflow VPC 媒體 安全 機房 權限 製造 資料倉儲 資料分析 遊戲 金融 電商 彙整 彙整 選取月份 2021年12月 (2) 2021年11月 (2) 2021年10月 (1) 2021年9月 (3) 2021年8月 (5) 2021年7月 (4) 2021年6月 (5) 2021年5月 (4) 2021年4月 (4) 2021年3月 (5) 2021年2月 (3) 2021年1月 (4) 2020年12月 (4) 2020年11月 (5) 2020年10月 (4) 2020年9月 (5) 2020年8月 (4) 2020年7月 (4) 2020年6月 (8) 2020年5月 (5) 2020年4月 (8) 2020年3月 (6) 2020年2月 (4) 2020年1月 (4) 2019年12月 (7) 2019年11月 (7) 2019年10月 (8) 2019年9月 (6) 2019年8月 (6) 2019年7月 (7) 2019年6月 (6) 2019年5月 (6) 2019年4月 (6) 2019年3月 (6) 2019年2月 (3) 2019年1月 (3) 2018年12月 (1) 2018年11月 (1) 2018年10月 (4) 2018年9月 (5) 2018年8月 (9) 2018年7月 (10) 2018年6月 (7) 2018年5月 (5) 2018年4月 (6) 2018年3月 (7) 2018年2月 (9) 2018年1月 (11) 2017年12月 (8) 2017年11月 (9) 2017年10月 (2) 2017年9月 (2) 2017年7月 (2) 2017年6月 (1) 2017年5月 (3) 2017年4月 (4) 2017年3月 (4) 2017年2月 (3) 2017年1月 (1) 2016年11月 (6) 2016年10月 (5) 2016年9月 (4) 2016年8月 (3) 聯絡我們 如果您有任何問題,可以先參考 FAQ 、寄信至[email protected]或者直接撥打+886287681110,謝謝! 產業類別* 遊戲業 媒體業 數據廣告業 電商與零售業 金融服務業 資訊產業 傳產製造業 高科技產業 教育/公家機構 自由業 其他 企業協作與辦公作業系統(支援遠端工作):GoogleWorkspace API管理 AI與機器學習 混合式雲端與多雲端 運算/無伺服器運算 資料分析 資料庫與儲存空間 搬遷(資料移轉/VM遷移) 網路(DNS/CDN/VPC) 安全性與身份識別 顧客數據平台 其他: 我已閱讀並同意「隱私權政策」 送出 清除 GCP Email格式不正確。

請填寫所有必填欄位。

謝謝您,表單已送出完成,請靜候我們的回覆!



請為這篇文章評分?