部署至 Compute Engine

Compute Engine 可直接從 Artifact Registry 存放區提取容器,因此您可以在虛擬機器 (VM) 執行個體上執行容器化工作負載。您可以設定服務帳戶角色和存取權範圍,控管 VM 跨專案存取或上傳構件的方式。

所需權限

Compute Engine 服務帳戶必須有 Artifact Registry 的存取權,才能提取容器映像檔。

視機構政策設定而定,預設服務帳戶可能會自動獲得專案的編輯者角色。強烈建議您 強制執行 iam.automaticIamGrantsForDefaultServiceAccounts 機構政策限制,停用自動角色授予功能。如果組織是在 2024 年 5 月 3 日後建立,系統預設會強制執行這項限制。

停用此功能後,您必須決定要將哪些角色授予預設服務帳戶,然後自行授予這些角色。

如果預設服務帳戶已具備「編輯者」角色,建議您將「編輯者」角色替換為權限較少的角色。如要安全修改服務帳戶的角色,請使用 Policy Simulator 查看變更會造成的影響,然後授予及撤銷適當的角色。

以下列舉不同情境所需的存取範圍和角色:

  • 如要從 Artifact Registry 存放區提取容器映像檔,您必須將 Artifact Registry 讀取者角色 (roles/artifactregistry.reader) 授予 Compute Engine 服務帳戶。此外,請確保已為 Cloud Storage 儲存空間 bucket 設定 read-only 存取範圍。
  • 您希望 VM 執行個體上傳至存放區。在這種情況下,您必須設定存取範圍,並授予儲存空間寫入權限:read-write、cloud-platform 或 full-control。
  • VM 執行個體與您要存取的存放區位於不同專案。在含有存放區的專案中,授予執行個體服務帳戶必要權限。
  • 這些存放區位於同一個專案中,但您不希望預設服務帳戶在所有存放區中擁有相同的存取層級。在這種情況下,您必須在存放區層級授予適當的權限,並在專案層級撤銷 Artifact Registry 權限。
  • VM 與自訂服務帳戶相關聯。請確認服務帳戶具備必要的權限和存取權範圍。
  • 您使用自訂角色授予權限,但自訂角色未包含必要的 Artifact Registry 權限。為角色新增必要的權限。