控管 Batch 的 VM OS 映像檔存取權

本頁說明如何設定信任的映像檔政策限制。這樣一來,您就能控管作業系統 (OS) 映像檔的存取權,這些映像檔可用於建立任何 Compute Engine 虛擬機器 (VM) 執行個體的開機磁碟。

根據預設,使用者可以為執行 Batch 作業的 Compute Engine VM,使用任何公開映像檔或與他們共用的自訂映像檔。如果未啟用可信映像檔政策限制,且您不想限制 VM OS 映像檔,可以停止閱讀本文。

如要規定專案、資料夾或機構中的所有使用者,在建立 VM 時只能使用符合政策或安全規定的核准軟體,請啟用信任的映像檔政策限制。如果啟用可信映像檔政策限制,受影響的使用者無法執行批次作業,除非作業的 VM OS 映像檔已獲准。啟用可信映像檔政策限制後,如要建立及執行工作,請至少採取下列其中一項做法:

如要進一步瞭解 VM OS 映像檔和開機磁碟,請參閱「VM OS 環境總覽」。如要瞭解專案、資料夾或機構已啟用哪些政策限制,請查看機構政策

事前準備

  1. 如果您從未使用過 Batch,請參閱「開始使用 Batch」,並完成專案和使用者的必要條件,啟用 Batch。
  2. 如要取得設定機構政策所需的權限,請要求管理員授予您機構的機構政策管理員 (roles/orgpolicy.policyAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

    您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

允許使用 Batch 的圖片

以下步驟說明如何修改信任的映像檔政策限制,允許 Batch 的所有 VM OS 映像檔,方法是使用Google Cloud 控制台或 Google Cloud CLI。

如需如何使用可信映像檔 (compute.trustedImageProjects) 政策限制的更多操作說明,請參閱 Compute Engine 說明文件中的「設定可信映像檔政策」。

主控台

  1. 前往「Organization policies」(機構政策) 頁面。

    前往「機構政策」

  2. 在政策清單中,點選「定義可信映像檔專案」

    「政策詳細資料」頁面隨即開啟。

  3. 在「政策詳細資料」頁面中,按一下「管理政策」。「編輯政策」頁面隨即開啟。

  4. 在「編輯政策」頁面中,選取「自訂」

  5. 在「政策強制執行」部分,選取強制執行選項。

  6. 按一下 [新增規則]

  7. 在「政策值」清單中,您可以選取要新增的規則,允許存取所有未指定的映像檔專案、拒絕存取所有未指定的映像檔專案,或是指定一組自訂專案,允許或拒絕存取。如要允許 Batch 中的所有映像檔,請按照下列步驟操作:

    1. 在「政策值」清單中,選取「自訂」。 畫面上會顯示「政策類型」和「自訂值」欄位。
    2. 在「政策類型」清單中,選取「允許」
    3. 在「Custom values」(自訂值) 欄位中輸入 projects/batch-custom-image
  8. 如要儲存規則,請按一下「完成」

  9. 如要儲存並套用機構政策,請按一下「儲存」

gcloud

以下範例說明如何允許特定專案使用 Batch 的映像檔:

  1. 如要取得專案現有的政策設定,請執行 resource-manager org-policies describe 指令

    gcloud resource-manager org-policies describe \
       compute.trustedImageProjects --project=PROJECT_ID \
       --effective > policy.yaml
    

    PROJECT_ID 替換為要更新的專案 ID。

  2. 使用文字編輯器開啟 policy.yaml 檔案。然後,將 projects/batch-custom-image 新增至 allowedValues 欄位,修改 compute.trustedImageProjects 限制。舉例來說,如要只允許 Batch 的 VM OS 映像檔,請將 compute.trustedImageProjects 限制設為下列值:

    constraint: constraints/compute.trustedImageProjects
    listPolicy:
     allowedValues:
        - projects//batch-custom-image
    

    完成 policy.yaml 檔案編輯後,請儲存變更。

  3. 如要將 policy.yaml 檔案套用至專案,請使用 resource-manager org-policies set-policy 指令

    gcloud resource-manager org-policies set-policy \
       policy.yaml --project=PROJECT_ID
    

    PROJECT_ID 替換為要更新的專案 ID。

更新限制條件後,建議進行測試,確認限制條件是否正常運作。

後續步驟