準備 IAM 權限

在 Google Distributed Cloud (GDC) 氣隙環境中對虛擬機器 (VM) 執行工作前,您必須具備適當的身分與存取權管理 (IAM) 角色和權限。

事前準備

如要使用 gdcloud CLI 指令,請完成「gdcloud 指令列介面 (CLI)」一節中的必要步驟。Google Distributed Cloud Air-Gapped 的所有指令都使用 gdcloudkubectl CLI,且需要作業系統 (OS) 環境。

取得 kubeconfig 檔案路徑

如要對 Management API 伺服器執行指令,請確認您具備下列資源:

  1. 登入並產生 Management API 伺服器的 kubeconfig 檔案 (如果沒有)。

  2. 使用 Management API 伺服器的 kubeconfig 檔案路徑,取代這些操作說明中的 MANAGEMENT_API_SERVER

關於 IAM

Distributed Cloud 提供「身分與存取權管理」(IAM) 功能,可讓您以精細的方式授予使用者特定 Distributed Cloud 資源的存取權限,避免其他資源遭到未經授權者擅自存取。IAM 遵循最低權限的安全原則,並透過 IAM 角色和權限,控管哪些使用者有權存取特定資源。

請參閱登入中的身分與存取權管理說明文件,瞭解如何登入 GDC 控制台或 gdcloud CLI,以及如何使用 kubectl 存取工作負載。

VM 資源的預先定義角色

如要在專案中建立 VM 和 VM 磁碟,請向專案 IAM 管理員要求特定專案的適當權限。所有 VM 角色都必須繫結至 VM 所在專案的命名空間。如要管理虛擬機器,專案 IAM 管理員可以指派下列預先定義的角色:

  • 專案 VirtualMachine 管理員 project-vm-admin:管理專案命名空間中的 VM。
  • 專案虛擬機器映像檔管理員 project-vm-image-admin:管理專案命名空間中的 VM 映像檔。

如要查看應用程式運算子 (AO) 的所有預先定義角色清單,請參閱「角色說明」。

以下是 VM 的預先定義常用角色。如要進一步瞭解常見角色,請參閱「常見角色」。

  • VM 類型檢視者 vm-type-viewer:具備預先定義 VM 類型的讀取權限。
  • 公開圖片檢視者 public-image-viewer:具備讀取 GDC 提供的圖片權限。

如要授予或取得 VM 資源的存取權,請參閱「授予專案資源存取權」。

確認使用者是否能存取 VM 資源

  1. 以要求或驗證權限的使用者身分登入

  2. 確認您或使用者是否可以建立虛擬機器:

    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachines.virtualmachine.gdc.goog -n PROJECT
    

    使用下列定義替換變數。

    變數 替換
    MANAGEMENT_API_SERVER 系統 kubeconfig 檔案 (來自 gdcloud auth login)。
    PROJECT 要建立 VM 映像檔的專案名稱。
    • 如果輸出內容為 yes,表示您有權在專案 PROJECT 中建立 VM。
    • 如果輸出內容為 no,表示您沒有權限。請與專案 IAM 管理員聯絡,要求在 VM 所在的專案命名空間中,將專案 VirtualMachine 管理員 (project-vm-admin) 角色指派給您。
  3. 選用:確認使用者是否可存取專案層級的 VM 映像檔。舉例來說,請執行下列指令,確認他們是否能在專案層級建立及使用 VirtualMachineImage 資源:

    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i get virtualmachineimages.virtualmachine.gdc.goog -n PROJECT
    
    kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachineimageimports.virtualmachine.gdc.goog -n PROJECT
    

    使用下列定義替換變數。

    變數 替換
    MANAGEMENT_API_SERVER 管理 API 伺服器 kubeconfig 檔案。
    PROJECT 建立 VM 映像檔的專案名稱。
    • 如果輸出為 yes,表示使用者有權存取專案 PROJECT 中的自訂 VM 映像檔。
    • 如果輸出內容為 no,表示您沒有權限。請與專案 IAM 管理員聯絡,要求在 VM 所在的專案命名空間中,將您指派為專案虛擬機器映像檔管理員 (project-vm-image-admin) 角色。