Google PDE: 資料治理、安全性、可靠性與成本營運 — 學習指南
屬於 Google Professional Data Engineer — 學習指南. 使用經過驗證的解答練習: Google 考試中心, 或參加限時模擬考試: ExamRoll.io.
總覽
本節總結了在 Google Cloud 上進行資料治理、安全性、可靠性與成本營運的設計模式及操作實務。內容聚焦於 BigQuery、Cloud Storage、Dataflow、Dataplex 及相關支援服務。重點在於最小權限原則、加密金鑰管理、中繼資料與分類、政策驅動的存取、合規性證據、具備可操作 SLO 的可觀測性,以及成本控制。內容包含權衡取捨、失敗模式與實際設定,以實現安全、可稽核且高效率的資料平台。
身分、存取與治理
IAM、服務帳戶、模擬、工作負載身分、最小權限原則
- 身分邊界
- 透過 Cloud Identity 或 Google Workspace 管理使用者與群組
- 為工作負載使用服務帳戶;在最低的實用資源層級(例如,在 dataset 而非 project 層級)指派範圍狹窄的角色
- 最小權限原則
- 優先使用預先定義的角色,而非基本角色;對於 BigQuery,應在 dataset 層級使用如 bigquery.dataViewer 的角色,而非專案層級的 viewer 角色
- 將權限授予群組;在 IdP 中管理成員資格,而非逐一管理使用者的 IAM
- 職責分離:為金鑰管理、資料存取及管理員指派不同的角色
- 模擬與 Workload Identity Federation
- 使用服務帳戶模擬 (roles/iam.serviceAccountTokenCreator),讓 CI/CD 或自動化流程永遠不儲存長期有效的金鑰
- 透過 OIDC/SAML 使用 Workload Identity Federation,讓外部身分無需服務帳戶金鑰檔案即可取得短期有效的權杖
- 失敗模式與緩解措施
- 過多的專案層級角色會導致橫向移動;使用 Cloud Asset Inventory 進行稽核
- 服務帳戶私鑰遺失:禁止金鑰建立;使用組織政策限制來阻擋金鑰下載;若發現外洩應立即輪替
- 身分邊界
Dataplex 治理、Data Catalog、業務中繼資料、資料血緣
- Dataplex 提供 lake、zone 和 asset,以集中式政策統一對 BigQuery 和 Cloud Storage 的治理
- Data Catalog 存放業務詞彙表、標籤範本與技術中繼資料;透過標籤附加業務中繼資料(如擁有者、PII 等級、RTO/RPO)
- 資料血緣捕捉上游與下游的關係;使用 Dataplex 與 Dataflow、Dataproc 和 BigQuery 的血緣整合功能,以追蹤影響範圍與合規範疇
- 權衡取捨
- 集中式治理會增加初期開銷,但能降低長期風險並加速稽核流程
政策標籤、分類、資料列層級存取、資料欄遮罩
- 分類
- 在 Data Catalog 政策標籤中定義一個分類法(例如:公開、內部、機密、受限)
- 將政策標籤附加到 BigQuery 的資料欄;將 IAM 綁定到標籤,使存取權限能跨資料表跟隨分類
- 資料欄遮罩
- 使用 BigQuery 資料遮罩政策,為非特權讀取者將敏感資料欄進行雜湊或空值化處理
範例:
- 分類
undefined
- 資料列層級存取
- 使用資料列存取政策,根據 tenant_id 或 region 等屬性來過濾紀錄
範例:
undefined
失敗模式
- 未將政策標籤的 IAM 權限授予管線使用的服務帳戶會導致查詢失敗;視需要為服務代理程式加入政策標籤的檢視者/存取者權限
- 如果每個使用者的篩選條件述詞選擇性過高,資料列政策可能會降低效能;在需要嚴格隔離的情況下,偏好使用較粗顆粒度的「每個租戶一個 dataset」的作法
敏感資料探索與去識別化
- 使用 Sensitive Data Protection 持續掃描 Cloud Storage 和 BigQuery;為每個 lake/zone 透過範本建立探索設定
- 使用去識別化轉換:權杖化、用於確保可 join 的確定性加密,或遮罩
- 將轉換金鑰儲存在 Cloud KMS;將用於重新識別的金鑰分開存放並實施雙重控制
- 權衡取捨
- 確定性加密雖能進行 join 操作,但可能洩漏頻率資訊;視需要加入格式保留加密或分桶處理
- 抽樣能降低探索掃描的成本,但可能會遺漏低普遍性的 PII
安全性與合規性維運
加密、Cloud KMS、CMEK 與密鑰處理
- 靜態加密與傳輸中加密是預設值;當法規要求控管金鑰時,請啟用 CMEK (適用於 BigQuery、GCS、Pub/Sub、Dataflow)
- 金鑰管理
- 將金鑰放置在與資料相同的區域;授予服務代理 (例如 BigQuery Service Agent)
roles/cloudkms.cryptoKeyEncrypterDecrypter角色 - 定期輪替金鑰;監控已停用或已排定銷毀的金鑰
- 將金鑰放置在與資料相同的區域;授予服務代理 (例如 BigQuery Service Agent)
- 故障模式
- 停用 CMEK 金鑰或撤銷服務代理的權限會導致載入、查詢和匯出中斷;應針對金鑰狀態變更設定警示
- 不允許跨區域使用金鑰;請確保位置一致以避免工作建立錯誤
- 密鑰 (Secrets)
- 使用 Secret Manager 管理資料庫憑證、API 權杖;透過 IAM 授予存取權限,並使用 Secret Manager 記錄進行稽核
- 絕不將密鑰嵌入程式碼、容器或筆記本中;應透過執行階段存取來掛載密鑰;在支援的情況下,優先使用 IAM 資料庫驗證
稽核記錄、存取審查、合規性證據、保留政策
- 在整個機構層級為 BigQuery、GCS、Pub/Sub 啟用資料存取記錄;將記錄匯出至一個使用 CMEK 的專屬、唯寫的記錄專案
- 建立匯總記錄匯出槽 (aggregated log sinks),將記錄匯出至 BigQuery (用於分析) 和 Cloud Storage (使用值區保留鎖定功能進行長期不可變封存)
- 使用 Cloud Asset Inventory 和 Policy Analyzer 進行定期的存取審查與漂移偵測
- 保留政策
- 根據合規性需求設定記錄保留期限;在 GCS 上使用物件版本控制和保留政策
- 在 BigQuery 中,設定預設資料表到期時間,並依賴資料表快照/時間旅行功能進行短期復原;將關鍵資料集封存至獨立的專案
- 證據
- 使用 Dataplex 標籤維護一個控制項對應 (例如,「SOX-C2:證據位於專案 X,匯出槽 Y」),自動化匯出作業,並執行排程查詢以產出證明文件
← 機器學習、AI 與資料服務 · 所有領域
練習這些題目 → · 在 ExamRoll.io 上限時練習 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
通過考試 →