Cloud SQL 機構政策

本頁說明如何在 Cloud SQL 專案中使用機構政策。如要開始建立機構政策,請參閱「新增機構政策」。

總覽

組織管理員可以透過組織政策,限制使用者在該組織下設定執行個體的方式。機構政策會使用規則 (稱為限制),由機構管理員套用至專案、資料夾或機構。限制條件會強制執行所有執行個體的政策。舉例來說,如果您嘗試在具有組織政策的實體中建立執行個體,條件約束會執行檢查,確保執行個體設定符合條件約束的要求。如果檢查失敗,Cloud SQL 就不會建立執行個體。

將專案新增至使用機構政策的機構或資料夾時,專案會繼承該政策的限制。

如要進一步瞭解機構政策,請參閱「機構政策服務」、「限制」和「 階層評估」。

Cloud SQL 專屬的機構政策類型如下:

預先定義的機構政策

您可以使用預先定義的限制,控管 Cloud SQL 執行個體的公開 IP 設定和客戶自行管理的加密金鑰 (CMEK) 設定。如要更精細地控管其他支援的設定,可以使用自訂限制。詳情請參閱自訂機構政策

連線機構政策

連線機構政策可集中控管 Cloud SQL 的公開 IP 設定,以減少來自網際網路的 Cloud SQL 執行個體資安攻擊途徑。機構政策管理員可以在專案、資料夾或機構層級,使用連線政策限制 Cloud SQL 的公開 IP 設定。

連線機構政策限制

連線機構政策有兩種預先定義的限制,可強制執行 Cloud SQL 執行個體的存取權。您也可以使用自訂機構政策,強制執行連線機構政策。詳情請參閱範例自訂限制中的 ipConfiguration 範例。

限制 說明 預設行為
限制 Cloud SQL 執行個體的公開 IP 存取權 如果將這項布林限制設為 True,就無法針對 Cloud SQL 執行個體設定公開 IP。這項限制不會溯及既往。即使強制執行這項限制,目前設有公開 IP 存取權的 Cloud SQL 執行個體仍可正常運作。

根據預設,Cloud SQL 執行個體可設定公開 IP 存取權。

constraints/sql.restrictPublicIp
允許
針對 Cloud SQL 執行個體限制授權網路 如果設為 True,這項布林限制會禁止在 Cloud SQL 執行個體中新增授權網路,以用於未經 Proxy 處理的資料庫存取權。這項限制不會溯及既往。 即使強制執行這項限制,目前具有已授權網路的 Cloud SQL 執行個體仍可正常運作。
根據預設,您可以在 Cloud SQL 執行個體中新增已授權網路。

constraints/sql.restrictAuthorizedNetworks
允許

連線機構政策的限制

為每個專案設定機構政策時,請判斷專案是否符合下列任一條件:

唯讀副本公開 IP 位址衝突

Cloud SQL 唯讀備用資源會透過非 Proxy 資料庫連線連線至主要執行個體。您可以使用主要執行個體的「授權網路」設定,明確或隱含地設定唯讀副本的公開 IP 位址。

如果主要和副本執行個體位於同一區域,並啟用私人 IP,則不會與連線機構政策限制發生衝突。

使用 gcloud sql connect 時不相容

gcloud sql connect 指令會使用公開 IP 位址直接連線至 Cloud SQL 執行個體。因此與 sql.restrictPublicIp 限制不相容。一般來說,這是使用私人 IP 的執行個體會遇到的問題。

此外,gcloud sql connect 指令不會使用 Proxy,因此與 sql.restrictAuthorizedNetworks 限制不相容。

請改用指令的 Beta 版:

gcloud beta auth login
gcloud beta sql connect [INSTANCE_ID]

這個版本會使用 Cloud SQL 驗證 Proxy。請參閱 gcloud beta sql connect 參考資訊。

第一次執行這個指令時,系統會提示您安裝 gcloud CLI Cloud SQL Auth Proxy 元件。為此,您必須具備用戶端電腦上 gcloud CLI SDK 安裝目錄的寫入權限。

Google Cloud 存取代管服務

如果應用程式需要從其他Google Cloud 代管服務 (例如 App Engine) 存取 Cloud SQL 執行個體,則必須使用公開 IP 位址。不要對專案強制執行 sql.restrictPublicIp 限制。不過,您可以強制執行sql.restrictAuthorizedNetworks,因為來自 App Engine 的連線會通過安全 (Proxy) 連線

非 RFC 1918 私人 IP 位址

使用私人 IP 位址連線至 Cloud SQL 執行個體時,系統會自動授權 RFC 1918 位址範圍。這樣一來,所有私人用戶端都能存取資料庫,不必透過 Proxy。您必須將非 RFC 1918 位址範圍設定為授權網路

如要使用未在授權網路中設定的非 RFC 1918 私人 IP 範圍,可以採取下列一或多項動作:

  1. 請勿強制執行 sql.restrictAuthorizedNetworks。如果授權網路也強制執行 sql.restrictPublicIp,您就無法在控制台中設定這些網路。請改用 Cloud SQL API 或 gcloud CLI
  2. 為私人 IP 執行個體使用 Proxy 連線。

客戶自行管理的加密金鑰 (CMEK) 機構政策

Cloud SQL 支援兩項機構政策限制,可協助確保整個機構都受到 CMEK 保護:constraints/gcp.restrictNonCmekServicesconstraints/gcp.restrictCmekCryptoKeyProjects

constraints/gcp.restrictNonCmekServices 限制規定 sqladmin.googleapis.com 必須採用 CMEK 保護措施。新增這項限制,並將 sqladmin.googleapis.com 新增至 Deny 服務政策清單後,除非啟用 CMEK,否則 Cloud SQL 會拒絕建立新執行個體。

constraints/gcp.restrictCmekCryptoKeyProjects 限制會限制哪些 Cloud KMS CryptoKey 可用於 PostgreSQL 適用的 Cloud SQL 執行個體的 CMEK 保護措施。設定這項限制後,當 Cloud SQL 建立採用 CMEK 的新執行個體時,CryptoKey 必須來自允許的專案、資料夾或機構。

這些限制只會套用至新建立的 PostgreSQL 適用的 Cloud SQL 執行個體。

如需更多總覽資訊,請參閱 CMEK 組織政策。 如要瞭解 CMEK 組織政策限制,請參閱組織政策限制

自訂機構政策

如要精細控管設定,您可以建立自訂限制,並在自訂機構政策中使用這些限制。您可以運用自訂機構政策,提升安全性、法規遵循和管理成效。

如要瞭解如何建立自訂機構政策,請參閱「新增自訂機構政策」。您也可以查看自訂限制條件支援的欄位清單

機構政策強制執行規則

Cloud SQL 會在下列作業期間強制執行機構政策:

  • 建立執行個體
  • 建立副本
  • 執行個體重新啟動
  • 執行個體遷移
  • 執行個體副本

與所有機構政策限制一樣,政策變更不會回溯套用至現有執行個體。

  • 新政策不會影響現有執行個體。
  • 除非使用者透過主控台、gcloud CLI 或 RPC,將執行個體設定從符合規範變更為不符合規範,否則現有的執行個體設定仍有效。
  • 排定的維護更新不會導致政策強制執行,因為維護作業不會變更執行個體的設定。

後續步驟