依產品版本限制新部署作業
Cloud Run 函式提供兩個產品版本:Cloud Run 函式 (第 1 代),即原始版本,以及 Cloud Run 函式 (舊稱第 2 代)。如果貴機構想強制執行限制,指定只能使用其中一個版本來部署新函式,您可以使用限制
constraints/cloudfunctions.restrictAllowedGenerations
定義新的機構政策。您可以使用這項限制,在套用政策的資料夾或專案中,指定要允許或拒絕的世代 (版本)。
這項限制只適用於首次部署的新函式。即使現有函式不符合政策,您仍可重新部署。
事前準備
如要建立或變更機構政策,您的帳戶必須具備 roles/orgpolicy.policyAdmin
角色。
使用政策設定及強制執行限制
您可以使用 Google Cloud CLI 或 Google Cloud 控制台建立政策,將特定組織內首次部署的新 Cloud Run 函式限制在指定環境中。
請注意,設定政策不會套用至現有函式。在政策生效前部署的所有函式,都可以不受限制地重新部署、更新或刪除。
主控台
前往 Google Cloud 主控台的「Organization policies」(機構政策) 頁面。
前往「機構政策」頁面選取要新增政策的專案、資料夾或機構。
「Organization policies」(機構政策) 頁面會顯示可用的機構政策限制條件清單。
在清單中找出「Allowed Cloud Functions Generations」政策。您可以使用清單頂端的「篩選器」欄位。
按一下政策名稱。您也可以從內容選單中選取「編輯政策」。
按一下「管理政策」。
選取「套用對象」下方的「自訂」。
在「政策強制執行」下方選取「取代」。
按一下「規則」下方的「新增規則」。
在「政策值」部分,選取「自訂」。
在「政策類型」中選取「允許」。
在「自訂值」中,指定要在組織中強制執行的環境。支援的值:
1stGen
:僅允許使用 Cloud Run 函式 (第 1 代)。2ndGen
:僅允許使用 Cloud Run 函式 (舊稱第 2 代)。- 如要明確允許這兩種環境,請一併指定
1stGen
和2ndGen
。根據預設,如果未設定政策,系統會允許這兩種環境。
按一下 [完成]。
按一下 [儲存]。
變更很快就會生效,而政策會防止在指定環境中部署 Cloud Run 函式。
gcloud
執行下列指令:
gcloud resource-manager org-policies \ allow cloudfunctions.restrictAllowedGenerations \ --organization=ORGANIZATION_NUMBER VERSION
其中 ORGANIZATION_NUMBER
是您要套用政策的機構編號,VERSION
則是必須用於新部署作業的 Cloud Run 函式版本。VERSION
可以是下列任一值:
1stGen
:僅允許使用 Cloud Run 函式 (第 1 代)。2ndGen
:僅允許使用 Cloud Run 函式 (第 2 代)。- 如要明確允許這兩種環境,請一併指定
1stGen
和2ndGen
。根據預設,如果未設定政策,系統會允許這兩種環境。