Google Cloud 合規性簡介
對於 Professional Cloud Architect 而言,合規性不僅僅是法律上的勾選方塊,它是一項基本的架構限制。無論您是處理美國的醫療記錄 (HIPAA)、歐盟的個人資料 (GDPR),還是全球範圍內的金融交易 (PCI-DSS, SOC2),您都必須了解 Google Cloud 如何透過平台安全與文件證明,幫助您滿足這些要求。
所有合規性討論的基礎都是共同承擔責任模型 (Shared Responsibility Model)。
一種安全框架,Google 負責雲端「本身」的安全(基礎架構、硬體、全球網路),而客戶負責雲端「內部」的安全(資料、IAM、應用程式碼、配置)。參考來源:https://cloud.google.com/security/compliance
白話文解釋
合規性本質上就是「證明您正在做您承諾過要做的事」。
類比 1 — 認證保險箱 (共同承擔責任)
想像您在一間世界級銀行租了一個保險箱。銀行負責建築物的安全、金庫的厚牆以及保安人員(雲端「本身」的安全)。然而,您負責要把鑰匙交給誰以及在保險箱裡放什麼(雲端「內部」的安全)。如果您讓保險箱大門敞開(糟糕的 IAM)或在裡面存放非法物品(不合規的資料),銀行不負責任。
類比 2 — 廚房檢查 (SOC2/SOC3)
SOC2 報告 就像是一份詳細的餐廳衛生稽查報告。它查看流程:廚師有洗手嗎?肉類儲存在正確的溫度嗎?每筆送貨都有紀錄嗎?SOC3 則是貼在窗戶上的「A 級」標誌——這是供公眾參考的摘要,而 SOC2 則是長達 50 頁、供所有者和稽查員參考的詳細報告。
類比 3 — 邊境管制 (資料落地)
資料落地 (Data Residency) 就像是簽證要求。某些資料(如 GDPR 下的歐盟公民資訊)需要「簽證」才能留在特定的地理邊界內。作為架構師,您可以使用資源位置限制 (Resource Location Restrictions)(組織政策)來確保資料「永遠不會離開該國」(或區域),就像邊境官員確保人們在未經許可的情況下不會跨越邊境一樣。
關鍵監管框架
1. GDPR (歐盟一般資料保護規範)
專注於歐盟公民的隱私。
- 資料處理者 (Data Processor): Google Cloud(代表您行事)。
- 資料控制者 (Data Controller): 您(擁有資料)。
- 關鍵要求: 被遺忘權、資料可攜性以及外洩通知。
2. HIPAA (美國健康保險流通與責任法案)
專注於美國醫療保健資料 (PHI)。
- BAA (商業夥伴協議): 在 GCP 上儲存任何 PHI 之前,您必須與 Google 簽署 BAA。
- 適用服務: 並非所有 GCP 服務都符合 HIPAA 標準。您必須僅使用「HIPAA 涵蓋」的服務。
3. SOC 2 與 SOC 3
服務組織控制 (Service Organization Controls)。
- SOC 2 Type II: 評估一段時間內(通常為 6-12 個月)控制措施的有效性。高度機密。
- SOC 3: SOC 2 報告的公開摘要。
合規性管理工具
Compliance Reports Manager (合規報告管理員)
一個中央入口網站,您可以在其中下載 Google 的第三方稽核報告(SOC、ISO、PCI)和證書。您可以將這些提供給您自己的稽查員,以證明 Google 履行了其責任。
Cloud Asset Inventory
允許您匯出特定時間點所有資源的狀態。這對於「快照」稽核至關重要,在這種稽核中,您必須證明防火牆規則在特定日期是正確的。
組織政策 (Organization Policies)
實現「預防性合規」最強大的工具。
- 資源位置限制 (Resource Location Restriction): 防止使用者在核准區域以外建立資源。
- 限制對等互連 (Restrict Peerings): 防止可能導致資料外洩的未經授權網路連接。
資料主權與落地 (Data Sovereignty and Residency)
架構師必須區分:
- 靜態資料 (Data at Rest): 儲存在磁碟上。透過 Bucket/磁碟位置控制。
- 傳輸中資料 (Data in Transit): 在網路上移動。Google 預設會加密資料中心之間的所有流量。
- 處理中資料 (Data in Use): 記憶體 (RAM) 中的資料。透過 Confidential Computing (機密運算)(機密虛擬機器/GKE 節點)解決,該技術會對記憶體中的資料進行加密。
GDPR 深度剖析 — 第 28 條、資料主體權利、72 小時通報
一般資料保護規範 (GDPR) 適用於任何處理歐盟/EEA 個人資料的場景,不論貴公司註冊地在哪。PCA 應掌握 Google 對應的三大支柱。
第 28 條 — 資料處理附約 (Cloud DPA)
第 28 條要求控制者(您)與處理者(Google)之間必須有書面合約。Google 提供 Cloud Data Processing Addendum (CDPA),您接受 Google Cloud 服務條款時即自動納入。CDPA 涵蓋第 28 條義務,包括 sub-processor 揭露、安全措施與稽核權。Google 於 cloud.google.com/terms/subprocessors 公開其 sub-processor 清單。
資料主體權利 (第 15–22 條)
您必須支援存取、更正、刪除(被遺忘權)、可攜性與限制處理。架構模式:
- Cloud Storage / BigQuery 刪除: 以資料主體的 pseudonymous ID 標記紀錄;排程
DELETE作業或bq query --destination_table重寫。Bucket 的 soft-delete 與 Object Versioning 也必須清除。 - Cloud SQL / Spanner: 進行 row-level
DELETE,並檢視 PITR 保留期限 — 保留期內的備份仍包含該資料。 - 日誌: Cloud Logging 稽核日誌最長保留 400 天;
_Required日誌儲存桶無法刪除,但若_Default日誌含個人資料,可改路由至短保留期 sink。
第 33 條 — 72 小時資料外洩通報
Google 會「不無故拖延地」透過 Cloud Console 與註冊聯絡人通知您。當您知悉時,向主管機關通報的 72 小時時鐘即啟動。請將 Security Command Center Premium findings 與 Cloud DLP 掃描結果串接到 PagerDuty / 工單系統,讓法務團隊立即收到呼叫。
GCP 上的 GDPR 合規,CDPA 自動生效 — 無需另行簽署文件。但您必須設定資源位置限制 (constraints/gcp.resourceLocations),將資料鎖在 in:eu-locations,並將日誌路由到綁定區域的 Cloud Logging 儲存桶。
GCP 上的 HIPAA — BAA 範圍與適用服務
HIPAA 規範美國的受保護健康資訊 (PHI)。在任何 PHI 進入 GCP 之前,您必須與 Google 簽署 Business Associate Agreement (BAA)。
簽署 BAA
BAA 透過 Google Cloud Console → IAM 與管理 → 設定 申請,或透過 Enterprise 合約的客戶代表辦理。它套用於 Organization 層級,涵蓋其下所有專案,前提是您僅使用 HIPAA-eligible 服務。
HIPAA-eligible 服務(代表性,非完整)
- 運算: Compute Engine、GKE、Cloud Run、App Engine standard/flex、Cloud Functions。
- 儲存 / 資料庫: Cloud Storage、Persistent Disk、Cloud SQL、Spanner、Firestore、Bigtable、BigQuery。
- 網路: VPC、Cloud Load Balancing、Cloud Interconnect、Cloud DNS。
- 維運: Cloud Logging、Cloud Monitoring、Cloud Trace。
- 醫療專用: Cloud Healthcare API(FHIR、HL7v2、DICOM stores)— 專為 PHI 設計。
- 安全: Cloud KMS、Cloud HSM、Secret Manager、Cloud IAM、VPC Service Controls。
不在 BAA 範圍內(PHI 不可流經)
歷來不時會有某些 preview / 待 GA 功能、第三方 Marketplace SaaS、部分 Workspace 周邊工具被排除。動工前請務必對照 cloud.google.com/security/compliance/hipaa-compliance 上當前發布的清單。
BAA 並非自動合規認證。把 PHI 放進非 eligible 的服務(例如 BAA 清單尚未涵蓋的全新 GA 服務)即使位於 GCP 仍構成 HIPAA 違規。儲存 PHI 前務必對照已發布的 HIPAA-covered services 清單核對。
SOC 2 Type II、ISO 27001/27017/27018、FedRAMP
架構師時常需要證明底層平台符合特定認證。
SOC 2 Type II
Google 每年由獨立 CPA 事務所依據 Trust Services Criteria(Security、Availability、Processing Integrity、Confidentiality、Privacy)進行 SOC 2 Type II 稽核。報告涵蓋12 個月期間。您於 Compliance Reports Manager 在 NDA 下載。
ISO/IEC 27001、27017、27018
- ISO 27001 — 資訊安全管理系統 (ISMS)。
- ISO 27017 — 雲端專屬控制(27002 對雲端供應商的延伸)。
- ISO 27018 — 公有雲中 PII 的保護(與 GDPR 高度相符)。
Google 透過 Compliance Reports Manager 公開其 ISO 證書 與 Statement of Applicability。架構師可繼承基礎架構層的控制,但應用程式層仍須自行建立 ISMS。
FedRAMP Moderate 與 High
美國政府工作負載方面,GCP 在 us-central1 與其他授權區域之 Assured Workloads 邊界擁有 FedRAMP High 授權。執行 FedRAMP 工作負載的步驟:
- 啟用 Assured Workloads 並選擇 FedRAMP Moderate 或 FedRAMP High 合規體制。
- 建立的 folder 會強制人員管制(US persons)、資料落地與核可的 CMEK key 位置。
- 該 folder 內僅能啟用 FedRAMP-authorized 服務 — 護欄自動套用。
PCA 考試記憶點:Article 28 = GDPR DPA (Google CDPA)、72 小時 = GDPR 外洩通報、BAA = 存放 PHI 的 HIPAA 前提、SOC 2 Type II = 12 個月控制測試、Assured Workloads = FedRAMP/IL4/CJIS 邊界、constraints/gcp.resourceLocations = 強制資料落地。
PCI DSS v4.0 與代碼化 (Tokenization) 模式
支付類工作負載目前適用的標準是 PCI DSS v4.0(2025 年 3 月起強制)。GCP 為 PCI DSS Level 1 服務供應商,每年由 QSA 評鑑。基礎架構層的控制可繼承,但範圍縮減則為您的責任。
透過代碼化縮小 PCI 範圍
直接儲存原始 Primary Account Number (PAN) 會把所有接觸到它的服務都拖進 PCI 範圍。GCP 上縮小 cardholder data environment (CDE) 的模式:
- Sensitive Data Protection (Cloud DLP) — 加密代碼化: 採用 FPE (Format-Preserving Encryption) 或 deterministic encryption 轉換,搭配 Cloud KMS 包裝過的金鑰。PAN 被替換為相同格式的代碼,下游 BigQuery / 分析系統只看到代碼,可排除於 CDE 之外。
- GKE 自建 token vault: 將代碼化服務跑在獨立專案,外圍以 VPC Service Controls 包裹,PAN 僅儲存於 CMEK 加密的 Persistent Disk。其他應用程式專案只看到代碼。
- 支付閘道直通: 採用通過 PCI 驗證的處理商(Stripe、Adyen)並使用 hosted fields,讓 PAN 完全不進入您的 GCP 專案 — 條件允許時這是首選模式。
PCI 強制要求且需您實作的控制
- 網路分段 — CDE 採用獨立 VPC,並在 Organization 或 Folder 層級套用 Hierarchical Firewall Policies。
- Cloud KMS 每年金鑰輪換(
--rotation-period=31536000s)。 - Cloud Logging 稽核軌跡 保留 ≥ 12 個月(PCI Req. 10.7),匯出到啟用 Bucket Lock 的 write-once Cloud Storage 儲存桶。
- 透過 Web Security Scanner 與外部 ASV 進行季度漏洞掃描。
以組織政策強制資料落地
許多法規(GDPR、德國 BDSG、澳洲 IRAP、韓國 PIPA)要求資料實體留在特定區域內。PCA 層級的對應工具是 Organization Policy Service。
關鍵限制:constraints/gcp.resourceLocations
這是一個定義允許建立資源之 Google Cloud 位置的 list constraint。可使用 value groups 提高便利性:
gcloud resource-manager org-policies set-policy \
--organization=123456789012 policy.yaml
# policy.yaml
constraint: constraints/gcp.resourceLocations
listPolicy:
allowedValues:
- in:eu-locations # 所有歐盟區域
- in:europe-west4-locations
inheritFromParent: false
Value groups 包含 in:us-locations、in:eu-locations、in:asia-locations,以及 in:europe-west4-locations 等單一區域群組。可附掛在 Organization、Folder 或 Project 層級 — 子資源預設繼承,除非覆寫。
它會阻擋什麼
Cloud Storage 儲存桶建立於清單外、Compute Engine VM / 磁碟、BigQuery dataset、Cloud SQL instance、Spanner instance、Pub/Sub message storage policy(設定後)、Cloud Functions 等。政策於 admission 時強制執行 — 既有資源不會被搬移。
搭配的限制
constraints/storage.uniformBucketLevelAccess— 強制 uniform IAM(杜絕逐物件 ACL 可能造成的跨區外洩)。constraints/compute.restrictVpcPeering— 阻擋會導致流量外洩至不合規網路的對等互連。constraints/iam.allowedPolicyMemberDomains— 限制 IAM 授權對象僅限您驗證過的 Cloud Identity 網域。
將 constraints/gcp.resourceLocations 與 VPC Service Controls 邊界搭配。Org Policy 阻擋核可區域外的建立,VPC-SC 則阻擋邊界內透過 API 流出的資料外洩。Defense in depth:預防加偵測雙管齊下。
Sensitive Data Protection (Cloud DLP) 進行 PII 探勘與去識別化
Sensitive Data Protection(前身為 Cloud DLP)是 GCP 原生用於發現、分類與去識別化 PII / PHI / PCI 資料的服務。
發現 — 先盤點手上有什麼
- Inspection job 掃描 Cloud Storage、BigQuery 與 Datastore,比對
EMAIL_ADDRESS、US_SOCIAL_SECURITY_NUMBER、CREDIT_CARD_NUMBER、PERSON_NAME、MEDICAL_RECORD_NUMBER等 infoType。內建超過 150 種偵測器,並支援自訂 regex 與 dictionary-based 的 stored infoTypes。 - Discovery service 在 BigQuery 持續執行,自動 profile 新表並把敏感欄位標籤化進 Data Catalog / Dataplex。
去識別化轉換
- Redaction / masking — 以
*或固定字串取代。 - Pseudonymization —
CryptoReplaceFfxFpeConfig(保留格式)、CryptoDeterministicConfig(可跨表 join)、CryptoHashConfig(單向)。 - Date shifting — 模糊化精確日期、但保留事件間隔以利分析。
- Generalization / bucketing — 將年齡
34轉成30-40。 - k-anonymity / l-diversity 風險分析 — 驗證資料集不可被反識別。
以 KMS 包裝金鑰反代碼化
針對 FPE / deterministic 轉換,儲存包裝過的金鑰參照 (kmsWrapped.cryptoKeyName),僅授權的 service account 可反向取回原始值。這就是前述 PCI 代碼化模式的底層建構元件。
Compliance Reports Manager — 證明 Google 那一側
當稽查員問「請提出 Google 確實履行承諾的證據」時,答案就是 cloud.google.com/security/compliance/compliance-reports-manager 的 Compliance Reports Manager。
可下載的內容
- SOC 1、SOC 2、SOC 3 報告(Google Cloud + Workspace)。
- ISO/IEC 27001、27017、27018、27701 證書與 Statement of Applicability。
- PCI DSS Attestation of Compliance (AoC)。
- HIPAA / HITECH 實作指南。
- FedRAMP 套件(受控存取)。
- C5(德國)、IRAP(澳洲)、MTCS(新加坡)及其他區域性報告。
存取流程
- 以具備
roles/compliancecenter.viewer(或本身為 Organization Admin)的 Cloud Identity 使用者登入。 - 接受入口顯示的 NDA / 保密條款 — SOC 2 與 FedRAMP 報告屬機密文件。
- 下載 PDF 後交付給外部稽查員,作為 inherited control 證據。
搭配 Cloud Asset Inventory
稽查員常問:「請證明在 2025-Q4-end 時點,您的防火牆規則僅允許 TLS 1.2+。」結合 Compliance Reports Manager(Google 側)與該時點的 Cloud Asset Inventory 匯出(您側):
gcloud asset export \
--organization=123456789012 \
--asset-types=compute.googleapis.com/Firewall \
--snapshot-time=2025-12-31T23:59:59Z \
--output-path=gs://audit-evidence/2025-q4/firewalls.json
這個組合是「snapshot 稽核」類考題的黃金答案。
PCA 考試上,情境若問「Google 控制措施的證據」答案是 Compliance Reports Manager;若問「自己配置在某時點的證據」答案是帶 --snapshot-time 的 Cloud Asset Inventory export。兩者切勿混淆 — 它們分別位於 Shared Responsibility 線的兩側。
安全性 vs. 合規性
| 功能 | 安全性 (Security) | 合規性 (Compliance) |
|---|---|---|
| 目標 | 防禦威脅。 | 滿足監管要求。 |
| 證據 | 日誌、防火牆觸發紀錄。 | 稽核報告、證書。 |
| 重點 | 技術控制。 | 流程與政策。 |
| GCP 工具 | Security Command Center。 | Compliance Reports Manager。 |
常見問題 — 合規性 (GDPR, HIPAA, SOC2)
Q1. 我要在哪裡簽署 HIPAA BAA?
BAA 通常透過 Google Cloud 控制台 的「安全性」或「法律」部分簽署,或是透過您的客戶代表簽署。
Q2. 我在 GCP 上的資料預設符合 GDPR 嗎?
不。GCP 提供合規的工具(加密、位置控制),但您必須為處理資料的方式以及您自己的隱私政策負責。
Q3. SOC 2 Type I 與 Type II 有什麼區別?
Type I 是控制措施在「特定時間點」的快照。Type II 則測試一段時間內(例如 6 個月)的控制措施。對於稽核而言,Type II 的價值更高。
Q4. 我可以將資料儲存在世界任何地方嗎?
技術上可以,但法律上可能不行。請使用組織政策來執行「資源位置限制」,以確保資料保留在特定的地理邊界內。
Q5. Google 可以存取我的資料嗎?
除了少數支援案例外,Google 員工無法存取您的資料,這些案例都會被記錄,並可透過 Access Transparency 與 Access Approval 進行控制。
架構師最終提示
在 PCA 考試中,請記住:Google 提供基礎架構的認證,但您要為應用程式的合規性負責。 如果問題詢問如何向稽查員「證明」Google 的安全性,答案始終是 Compliance Reports Manager。如果詢問如何出於法律原因「防止」在特定區域建立資源,答案則是 組織政策。