Google Cloud 提供兩種組織政策限制,有助於確保整個機構的 CMEK 用量:
constraints/gcp.restrictNonCmekServices
可用於要求 CMEK 保護。constraints/gcp.restrictCmekCryptoKeyProjects
用於限制用於 CMEK 保護措施的 Filestore 金鑰。
CMEK 組織政策僅適用於在支援 Google Cloud 服務中新建立的資源。
如需進一步瞭解這項功能的運作方式,請參閱 Google Cloud 資源階層和 CMEK 組織政策。
使用機構政策控管 CMEK 使用情形
Filestore 會整合 CMEK 機構政策限制,讓您為機構中的 Filestore 資源指定加密法規遵循要求。
這項整合功能可讓您執行下列操作:
下列章節將說明這兩項工作。
要求所有 Filestore 資源都使用 CMEK
常見的政策是要求使用 CMEK 來保護機構中的所有資源。您可以使用 constraints/gcp.restrictNonCmekServices
限制在 Filestore 中強制執行這項政策。
如果設定這項機構政策,所有未指定 Cloud KMS 金鑰的資源建立要求都會失敗。
設定這項政策後,它只會套用至專案中的新資源。任何未設定 Cloud KMS 金鑰的現有資源,仍會繼續存在,且可順利存取。
主控台
開啟「機構政策」頁面。
在「Filter」欄位中輸入
constraints/gcp.restrictNonCmekServices
,然後按一下「Restrict which services may create resources without CMEK」。按一下
「管理政策」。在「Edit policy」(編輯政策) 頁面上,選取「Override parent's policy」(覆寫父項政策)。
選取「新增規則」。
在「政策值」部分,選取「自訂」。
在「政策類型」部分,選取「拒絕」。
在「自訂值」欄位中輸入
is:file.googleapis.com
。依序點選「完成」和「設定政策」。
gcloud
建立臨時檔案
/tmp/policy.yaml
來儲存政策:name: projects/PROJECT_ID/policies/gcp.restrictNonCmekServices spec: rules: - values: deniedValues: - is:file.googleapis.com
將 PROJECT_ID 替換為您要使用的專案 ID。
執行
org-policies set-policy
指令:gcloud org-policies set-policy /tmp/policy.yaml
如要確認政策已成功套用,您可以嘗試在專案中建立執行個體或備份。除非指定 Cloud KMS 金鑰,否則程序會失敗。
限制 Filestore 專案的 Cloud KMS 金鑰
您可以使用 constraints/gcp.restrictCmekCryptoKeyProjects
限制,限制可用於保護 Filestore 專案中資源的 Cloud KMS 金鑰。
您可以指定規則,例如:「對於 projects/my-company-data-project 中的所有 Filestore 資源,這個專案中使用的 Cloud KMS 金鑰必須來自 projects/my-company-central-keys 或 projects/team-specific-keys。」
主控台
開啟「機構政策」頁面。
在「Filter」欄位中輸入
constraints/gcp.restrictCmekCryptoKeyProjects
,然後按一下「Restrict which projects may supply KMS CryptoKeys for CMEK」。按一下
「管理政策」。在「Edit policy」(編輯政策) 頁面上,選取「Override parent's policy」(覆寫父項政策)。
選取「新增規則」。
在「政策值」部分,選取「自訂」。
在「政策類型」中,選取「允許」。
在「自訂值」欄位中輸入以下內容:
under:projects/KMS_PROJECT_ID
將 KMS_PROJECT_ID 替換為您要使用的 Cloud KMS 金鑰所在的專案 ID。
例如
under:projects/my-kms-project
。依序點選「完成」和「設定政策」。
gcloud
建立臨時檔案
/tmp/policy.yaml
來儲存政策:name: projects/PROJECT_ID/policies/gcp.restrictCmekCryptoKeyProjects spec: rules: - values: allowedValues: - under:projects/KMS_PROJECT_ID
其中:
- PROJECT_ID 是您要使用的專案 ID。
- KMS_PROJECT_ID 是您要使用的 Cloud KMS 金鑰所在的專案 ID。
執行 org-policies set-policy 指令:
gcloud org-policies set-policy /tmp/policy.yaml
如要確認政策已成功套用,您可以嘗試使用不同專案中的 Cloud KMS 金鑰建立執行個體或備份。程序將會失敗。
限制
設定機構政策時,請注意下列限制。
CMEK 適用性
提醒您,基本傳統硬碟和基本固態硬碟服務層級不支援 CMEK。基於這些限制的定義方式,如果您套用要求使用 CMEK 的機構政策,然後嘗試在相關聯的專案中建立基本層級的執行個體或備份,這些建立作業就會失敗。
現有資源
現有資源不受新建立的機構政策約束。舉例來說,如果您建立的機構政策要求您為每項 create
作業指定 CMEK,則政策不會追溯套用至現有的執行個體和備份鏈結。即使沒有 CMEK,這些資源仍可存取。如要將政策套用至現有資源 (無論是執行個體還是備份鏈結),您必須先替換這些資源。
設定機構政策所需的權限
您可能很難取得設定或更新機構政策的權限,以便進行測試。您必須具備機構政策管理員角色,且只能在機構層級授予此角色。
雖然必須在機構層級授予角色,但仍可指定只套用於特定專案或資料夾的政策。
Cloud KMS 金鑰輪替的影響
與資源相關聯的 Cloud KMS 金鑰輪替時,Filestore 不會自動輪替資源的加密金鑰。
現有執行個體和備份中的所有資料,都會繼續受到當初建立時採用的金鑰版本保護。
任何新建立的執行個體或備份都會使用建立時指定的主要金鑰版本。
輪替金鑰時,系統不會自動重新加密使用先前金鑰版本加密的資料。如要使用最新的金鑰版本加密資料,您必須先解密資源中的舊金鑰版本,然後再使用新金鑰版本重新加密相同的資源。此外,輪替金鑰不會自動停用或刪除任何現有的金鑰版本。
如要進一步瞭解如何執行這些工作,請參閱下列指南:
Filestore 對 Cloud KMS 金鑰的存取權
在符合下列條件的情況下,Filestore 會將 Cloud KMS 金鑰判定為可供使用及存取:
- 金鑰已啟用
- Filestore 服務帳戶具備該金鑰的加密和解密權限
後續步驟
- 瞭解如何加密 Filestore 執行個體或備份。
- 瞭解 CMEK。
- 瞭解 Google Cloud中的傳輸中資料加密功能。
- 瞭解機構政策。
- 瞭解 CMEK 機構政策。