本頁說明如何搭配 Apigee 使用 組織政策限制。
Apigee 並非所有功能都會使用 CMEK 加密機密資料。為確保需要使用 CMEK 加密的資料不會在不知不覺中,使用未受 CMEK 保護的功能,系統會針對受 CMEK 限制的專案停用這些功能,直到符合規定為止。系統只會停用功能的新用途 (建立新資源或啟用外掛程式),已使用的功能和資源仍可存取及編輯,但不會受到保護。
gcloud alpha apigee organizations API 和 評估佈建精靈都會封鎖評估組織的建立作業。 嘗試查看評估佈建精靈時,您會看到「無法評估 Apigee」訊息。
如要進一步瞭解受 CMEK 限制的專案會停用哪些功能,請參閱「 組織政策限制」。
條款
本主題使用下列詞彙:
| 字詞 | 定義 |
|---|---|
| CMEK | 客戶管理的加密金鑰。詳情請參閱「客戶自行管理的加密金鑰」一文。 |
| 機構政策限制 | 限制是指針對某 Google Cloud 服務或一組 Google Cloud服務進行的特定規範類型。就 CMEK 而言,有
兩個相關限制:
|
| 強制執行 | 保證 Apigee 的後端系統會遵守專案的限制 (在本例中為 CMEK 限制) |
| 預先驗證 | 使用者介面會引導您根據 CMEK 機構政策,在 Apigee 中選取有效設定,且不會顯示不相容的功能 |
| 資源 | Apigee 資源,例如 機構和 執行個體 |
如何限制非 CMEK 服務
本節說明如何限制非 CMEK 服務。
必要條件
請按照下列指示操作:
-
具備
組織政策管理員角色。如要取得管理組織政策所需的權限,請要求管理員授予您組織的
組織政策管理員 (
roles/orgpolicy.policyAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理存取權」。 - 請先完成「 佈建簡介」一文所述的前置作業。
- 使用付費機構 (訂閱制或即付即用)。
- 使用 資料落地。
開啟專案
前往 Google Cloud 控制台的「Dashboard」(資訊主頁) 頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台下拉式清單中選取專案。
建立機構政策限制
機構政策由每項限制條件所設定的值來定義。 政策可以在其資源層級設定、從父項資源繼承,也可以設定為 Google 代管的預設行為。在本例中,您將建立需要 CMEK 的限制,並套用至專案和所有從專案繼承的資源。
如要確保 Apigee 一律使用客戶自行管理的加密金鑰加密資料,請建立下列機構政策限制:
前往 Google Cloud 控制台的「Organization policies」(組織政策) 頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台下拉式清單中選取專案。
- 在「篩選器」方塊中輸入:
constraints/gcp.restrictNonCmekServices
- 依序點選「更多」圖示 、「編輯政策」。如果「編輯」已停用,表示您沒有必要權限,請要求管理員授予您組織的
組織政策管理員 (
roles/orgpolicy.policyAdmin) IAM 角色。詳情請參閱「先決條件」。 - 在「政策來源」部分,選取「覆寫上層政策」。 這項資源將有專屬政策。在下一個步驟中,您將指定如何處理父項政策規則。
- 在「Policy enforcement」(政策強制執行) 部分,選取下列其中一個選項:
- 取代。這個選項會忽略上層政策,並使用這些規則。
- 與父項合併。這個選項除了上層資源設定的規則以外,另外新增規則。
如要瞭解機構政策的沿用方式,請參閱「 瞭解階層評估」。
- 點選「新增規則」。
- 在「政策值」部分,選取「自訂」。
- 在「政策類型」部分,選取「拒絕」。
- 在「自訂值」部分輸入:
apigee.googleapis.com
- 按一下 [完成]。
- 按一下「設定政策」。系統隨即會顯示「政策詳細資料」頁面。
設定政策並選取會沿用/使用政策的專案後,即可佈建 Apigee。請注意,在設定 CMEK 組織政策前建立的 Apigee 資源不一定符合規定;只有在政策生效後建立的新資源,才會遵守 CMEK 限制。
另請參閱:
佈建 Apigee
在設有機構政策限制的環境中佈建 Apigee,與在沒有機構政策限制的環境中佈建 Apigee 的步驟相同,但使用者介面會禁止您選取不支援的項目。
本節說明使用者介面會引導您在何處進行選取。
前往 Google Cloud 控制台的「Apigee」頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台的下拉式清單中選取專案。
- 在「Welcome to Apigee API management」(歡迎使用 Apigee API 管理平台) 頁面中,由於您需要明確選取 CMEK,因此「Setup using defaults」(使用預設值設定) 會停用。按一下「自訂設定」。
- 啟用 API:如「 步驟 1:啟用必要的 API」一節所述,啟用必要的 API。
- 設定網路:按照 步驟 2:設定網路中的說明設定網路。
設定託管與加密機制:
使用者歷程 D:客戶自行管理的加密,並遵守資料落地法規,是唯一與機構政策限制相關的使用者歷程,可限制非 CMEK 服務。
- 按一下「編輯」,開啟「代管和加密金鑰」面板。
- 在「加密類型」部分,「Google 管理的加密金鑰」會停用,「客戶管理的加密金鑰」則會啟用,且無法停用。
- 點選「下一步」。
- 在「控制層」部分,已啟用「啟用資料落地」,且無法停用。
- 如「 使用者歷程 D:客戶管理加密,並符合資料落地規定」的步驟 3.b 所述,繼續設定託管與加密。
- 自訂存取轉送功能: 如要自訂存取轉送功能,請參閱 步驟 4:自訂存取轉送功能。
如何限制 CMEK 加密編譯金鑰專案
本節說明如何限制 CMEK 加密金鑰專案。
您可以透過另一項組織政策限制 constraints/gcp.restrictCmekCryptoKeyProjects,限制哪些專案可以提供加密金鑰。這項限制可讓您將專案加入允許清單,允許使用這些專案的加密金鑰。
凡是可選取 CMEK 的位置 (目前為佈建 Apigee 或建立 Apigee 執行個體時),都會強制執行這項限制。
如果 Google Cloud 控制台中目前選取的專案未列入 restrictCmekCryptoKeyProjects 限制的允許清單,您就無法從加密金鑰選取方塊中選取任何金鑰。您必須改用允許清單中的專案金鑰。
必要條件
請按照下列指示操作:
-
具備
組織政策管理員角色。如要取得管理組織政策所需的權限,請要求管理員授予您組織的
組織政策管理員 (
roles/orgpolicy.policyAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理存取權」。 - 請先完成「 佈建簡介」一文所述的前置作業。
- 使用付費機構 (訂閱或即付即用)
- 使用 資料落地
- 使用 Google Cloud 控制台佈建 (訂閱或即付即用)。
- 瞭解要使用的金鑰位於哪個專案。
開啟專案
前往 Google Cloud 控制台的「Dashboard」(資訊主頁) 頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台下拉式清單中選取專案。
建立機構政策限制
機構政策由每項限制條件所設定的值來定義。 政策可以在其資源層級設定、從父項資源繼承,也可以設定為 Google 代管的預設行為。在本例中,您將建立限制,只允許來自許可清單專案的金鑰。這項限制會套用至專案,以及從專案繼承的所有資源。
如要確保只有特定專案使用客戶自行管理的加密金鑰,請將這些專案加入許可清單:
前往 Google Cloud 控制台的「Organization policies」(組織政策) 頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台的下拉式清單中選取專案。
- 在「篩選器」方塊中輸入:
restrictCmekCryptoKeyProjects
- 依序點選「更多」圖示 「編輯政策」。如果「編輯」已停用,表示您沒有必要權限,請要求管理員授予您組織的
組織政策管理員 (
roles/orgpolicy.policyAdmin) IAM 角色。詳情請參閱「先決條件」。 - 在「政策來源」部分,選取「覆寫上層政策」。 這項資源將有專屬政策。在下一個步驟中,您將指定如何處理父項政策規則。
- 在「Policy enforcement」(政策強制執行) 部分,選取下列其中一個選項:
- 取代。這個選項會忽略上層政策,並使用這些規則。
- 與父項合併。這個選項除了上層資源設定的規則以外,另外新增規則。
如要瞭解機構政策的沿用方式,請參閱「 瞭解階層評估」。
- 點選「新增規則」。
- 在「政策值」部分,選取「自訂」。
- 將「政策類型」設為「允許」。
- 在「自訂值」部分輸入:
projects/PROJECT_ID
將 PROJECT_ID 替換為您要使用的 Cloud KMS 金鑰所在專案 ID。例如:
my-kms-project。 - 按一下 [完成]。
- 按一下「設定政策」。系統隨即會顯示「政策詳細資料」頁面。
設定政策並選取會沿用/使用政策的專案後,即可佈建 Apigee。請注意,設定 CMEK 組織政策前建立的 Apigee 資源不保證符合規定;只有在政策生效後建立的新資源,才會遵守 CMEK 限制。
另請參閱:
佈建 Apigee
在設有機構政策限制的環境中佈建 Apigee,與在沒有機構政策限制的環境中佈建 Apigee 的步驟相同,但使用者介面會禁止您選取不支援的項目。
本節說明使用者介面會引導您在何處進行選取。
前往 Google Cloud 控制台的「Apigee」頁面。
- 如果尚未選取專案,請在 Google Cloud 控制台下拉式清單中選取專案。
- 在「歡迎使用 Apigee API 管理平台」頁面中, 按一下「自訂設定」。
- 啟用 API:如「 步驟 1:啟用必要的 API」一節所述,啟用必要的 API。
- 設定網路:按照 步驟 2:設定網路中的說明設定網路。
設定託管與加密機制:
使用者歷程 D:客戶自行管理的加密,並設有資料存放位置限制,是唯一與機構政策限制相關的使用者歷程,可限制非 CMEK 服務。
- 按一下「編輯」,開啟「代管和加密金鑰」面板。
- 在「加密類型」部分,「Google 管理的加密金鑰」會停用,「客戶管理的加密金鑰」則會啟用,且無法停用。
- 點選「下一步」。
- 在「控制層」部分,已啟用「啟用資料落地」,且無法停用。
- 如「 使用者歷程 D:客戶管理加密,並符合資料落地規定」的步驟 3.b 所述,繼續設定託管與加密。
- 自訂存取轉送功能: 如要自訂存取轉送功能,請參閱 步驟 4:自訂存取轉送功能。
使用已加入許可清單的專案中的金鑰
如要使用 Apigee 許可清單中的專案金鑰,請手動輸入金鑰的資源 ID。您手動輸入的任何金鑰也會經過驗證,確保金鑰的專案根據限制中的允許專案清單有效。
如何取得 Google Cloud KMS 資源 ID
請參閱「取得 Cloud KMS 資源 ID」一節。
疑難排解
下表說明使用 CMEK 和組織政策限制時,可能會出現的一些常見錯誤情況。
| 錯誤訊息 | 原因 | 操作步驟 |
|---|---|---|
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create or enable trial org. CMEK is not
supported for trial orgs. To use trial orgs, adjust the
gcp.restrictNonCmekServices constraint for this project. |
您嘗試佈建試用機構,但專案有組織政策限制。 |
試用/評估機構不支援 CMEK。您必須更新機構政策限制 constraints/gcp.restrictNonCmekServices,從遭拒服務清單中移除 Apigee,才能佈建試用機構。 |
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create or enable global org. CMEK is not
supported in location 'global', select another location or adjust the
code constraint for this project. |
您嘗試佈建全域機構,但專案有機構政策限制。 |
全球機構不支援 CMEK。您必須更新機構政策限制 constraints/gcp.restrictNonCmekServices,從遭拒服務清單中移除 Apigee,或使用其他位置建立機構。 |
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create a resource without specifying
a KMS CryptoKey. Provide a KMS CryptoKey to use for this resource.
|
您嘗試佈建機構,但專案有機構政策限制,且您未指定 KMS CryptoKey。 |
您在機構政策中設定的程式碼要求您提供 CMEK 來加密資料。您必須提供 CMEK 金鑰,才能建立機構或執行個體。如果不想強制執行 CMEK,可以更新組織政策限制 constraints/gcp.restrictNonCmekServices,從遭拒服務清單中移除 Apigee。 |
Constraint constraints/gcp.restrictCmekCryptoKeyProjects violated for
projects/my-project attempting to use
projects/my-project/locations/my-location/keyRings/kr-1/cryptoKeys/ck-1
key. Use a key from a project that is allowed by
|
您嘗試佈建機構,但專案存在機構政策限制,且您指定的 KMS CryptoKey 不在允許清單中。 |
您已在機構政策中設定 constraints/gcp.restrictCmekCryptoKeyProjects,因此必須提供您列出的允許專案中的 CMEK 金鑰。您必須提供允許專案的 CMEK 金鑰,才能建立機構或執行個體。或者,您也可以更新機構政策限制 constraints/gcp.restrictCmekCryptoKeyProjects,允許使用特定專案的金鑰。 Google Cloud |
Constraint constraints/gcp.restrictNonCmekServices violated for
projects/my-project attempting to create a portal. Integrated
portals do not support the use of CMEK. To use integrated portals,
adjust the gcp.restrictNonCmekServices policy constraint.
|
您嘗試建立入口網站,但專案有機構政策限制。 |
整合式入口網站不支援 CMEK。您必須更新機構政策限制 constraints/gcp.restrictNonCmekServices,從禁止使用的服務清單中移除 Apigee,才能建立新入口網站。 |