在 Google Distributed Cloud (GDC) 气隙式设备中对虚拟机 (VM) 执行任务之前,您必须拥有适当的身份和访问管理 (IAM) 角色和权限。
GDC 空气隔离设备提供 Identity and Access Management (IAM),可让您授予对特定 GDC 空气隔离设备资源的细化访问权限,并防止对其他资源进行不必要的访问。IAM 遵循最小权限安全原则,可控制谁(身份)对哪些资源具有哪些权限(角色)。您必须先获得必要的角色和权限,然后才能使用虚拟机 (VM)。
准备工作
如需使用 gdcloud CLI 命令,请完成 gdcloud 命令行界面 (CLI) 部分中的必需步骤。Google Distributed Cloud air-gapped 设备的所有命令都使用 gdcloud
或 kubectl
CLI,并且需要操作系统 (OS) 环境。
获取 kubeconfig 文件路径
针对
gdcloud auth login
管理 API 服务器运行。记录生成文件的路径。以下是记录路径的示例:
/tmp/admin-kubeconfig-with-user-identity.yaml
。使用该路径替换这些说明中的
MANAGEMENT_API_SERVER
。
IAM 简介
GDC 空气隔离设备提供 Identity and Access Management (IAM),可让您授予对特定 GDC 空气隔离设备资源的细化访问权限,并防止对其他资源进行不必要的访问。IAM 遵循最小权限安全原则,并使用 IAM 角色和权限来控制哪些人有权访问指定资源。
请参阅登录中的 IAM 文档,其中提供了有关登录 GDC 控制台或 gdcloud CLI 并使用 kubectl
访问工作负载的说明。
预定义角色到虚拟机资源的映射
如需在项目中创建虚拟机和虚拟机磁盘,请向项目 IAM 管理员申请相应权限。如需管理虚拟机,您的项目 IAM 管理员可以为您分配以下预定义角色:
- Project VirtualMachine Admin:管理项目命名空间中的虚拟机。
- Project VirtualMachine Image Admin:管理项目命名空间中的虚拟机映像。
如需查看应用运营商 (AO) 的所有预定义角色列表,请参阅角色说明。
以下是虚拟机的预定义通用角色。如需详细了解常见角色,请参阅常见角色。
- 虚拟机类型查看者:拥有对预定义虚拟机类型的读取权限。
- 公共映像查看者:拥有对 GDC 网闸隔离设备提供的映像的读取权限。
如需授予或接收对虚拟机资源的访问权限,请参阅授予对项目资源的访问权限。
验证用户对虚拟机资源的访问权限
以请求或验证权限的用户身份登录。
验证您或用户是否可以创建虚拟机:
kubectl --kubeconfig MANAGEMENT_API_SERVER auth can-i create virtualmachines.virtualmachine.gdc.goog -n PROJECT
使用以下定义替换变量。
变量 替换 MANAGEMENT_API_SERVER
管理 API 服务器 kubeconfig
的路径(从gdcloud auth login
开始)PROJECT
创建虚拟机映像 如果输出为
yes
,则表示您有权在项目PROJECT
中创建虚拟机。
如果输出为no
,则表示您没有相应权限。请与您的 Project IAM Admin 联系,请求分配 Project VirtualMachine Admin (project-vm-admin
) 角色。可选:验证用户是否可以访问项目级虚拟机映像,以及是否可以在项目级层创建和使用
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
创建虚拟机映像的项目名称 - 如果输出为
yes
,则表示用户有权访问项目 PROJECT 中的自定义虚拟机映像。 - 如果输出为
no
,则表示您没有相应权限。请与您的 Project IAM Admin 角色联系,并请求分配 Project VirtualMachine Image Admin (project-vm-image-admin
) 角色。
- 如果输出为