Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Antes de realizar tarefas em máquinas virtuais (VMs) no
Google Distributed Cloud (GDC) isolado por air-gap, você precisa ter as funções e permissões de identidade e acesso
(IAM) adequadas.
Antes de começar
Para usar os comandos da CLI gdcloud, conclua as etapas necessárias nas seções da
interface de linha de comando (CLI) gdcloud. Todos os comandos para o Google Distributed Cloud isolado usam a CLI gdcloud ou kubectl e exigem um ambiente de sistema operacional (SO).
Extrair o caminho do arquivo kubeconfig
Para executar comandos no servidor da API Management, verifique se você tem os seguintes
recursos:
Faça login e gere o arquivo
kubeconfig para o servidor da API Management se você não tiver um.
Use o caminho para o arquivo kubeconfig do servidor da API Management para substituir
MANAGEMENT_API_SERVER nestas instruções.
Sobre o IAM
O Distributed Cloud oferece o Identity and Access Management (IAM) para
acesso granular a recursos específicos do Distributed Cloud e impede
o acesso indesejado a outros recursos. O IAM opera com o princípio de segurança de privilégio mínimo e oferece controle sobre quem tem permissão para determinados recursos usando papéis e permissões do IAM.
Leia a documentação do IAM em
Fazer login, que fornece
instruções para fazer login no console do GDC ou na
CLI gdcloud e usar kubectl para acessar suas cargas de trabalho.
Papéis predefinidos para recursos de VM
Para criar VMs e discos de VM em um projeto, peça as permissões adequadas
ao administrador do IAM do projeto. Todas as funções de VM precisam ser vinculadas ao
namespace do projeto em que a VM reside. Para gerenciar máquinas virtuais,
o administrador do IAM do projeto pode atribuir a você os seguintes papéis predefinidos:
Administrador de máquinas virtuais do projetoproject-vm-admin: gerencia VMs no
namespace do projeto.
Administrador de imagens de máquina virtual do projetoproject-vm-image-admin: gerencia imagens de VM
no namespace do projeto.
Para uma lista de todos os papéis predefinidos para operadores de aplicativos (AO), consulte
Descrições de papéis.
Confira a seguir os papéis comuns predefinidos para VMs. Para detalhes sobre papéis comuns,
consulte
Papéis comuns.
Leitor de tipo de VMvm-type-viewer: tem acesso de leitura a tipos de VM predefinidos.
Leitor de imagens públicaspublic-image-viewer: tem acesso de leitura às imagens
fornecidas pelo GDC.
Substitua as variáveis usando as seguintes definições.
Variável
Substituição
MANAGEMENT_API_SERVER
O arquivo kubeconfig do sistema
de gdcloud auth login.
PROJECT
O nome do projeto para criar imagens de VM.
Se o resultado for yes, você terá permissões para criar uma VM no projeto PROJECT.
Se a saída for no, você não terá permissões. Entre em contato com o administrador do IAM do projeto e peça para atribuir a você o papel de administrador da máquina virtual do projeto (project-vm-admin) no namespace do projeto em que a VM está localizada.
Opcional: verifique se os usuários têm acesso a imagens de VM no nível do projeto. Por exemplo, execute os comandos a seguir para verificar se eles podem criar e usar recursos VirtualMachineImage no nível do projeto:
Substitua as variáveis usando as seguintes definições.
Variável
Substituição
MANAGEMENT_API_SERVER
O arquivo kubeconfig do servidor da API Management.
PROJECT
O nome do projeto em que as imagens de VM são criadas.
Se a saída for yes, o usuário terá permissões para acessar imagens de VM personalizadas
no projeto PROJECT.
Se a saída for no, você não terá permissões. Entre em contato com seu administrador do IAM do projeto e peça para atribuir a você o papel de administrador de imagens de máquinas virtuais do projeto (project-vm-image-admin) no namespace do projeto em que a VM está.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[[["\u003cp\u003eProper Identity and Access Management (IAM) roles and permissions are required before performing tasks on virtual machines (VMs) in Google Distributed Cloud (GDC) air-gapped.\u003c/p\u003e\n"],["\u003cp\u003eTo manage virtual machines in a project, a Project IAM Admin can assign the "Project VirtualMachine Admin" role, while managing VM images require the "Project VirtualMachine Image Admin" role.\u003c/p\u003e\n"],["\u003cp\u003eUsers can verify their permissions to create VMs or access VM images within a specific project using \u003ccode\u003ekubectl\u003c/code\u003e commands and checking for a "yes" or "no" output.\u003c/p\u003e\n"],["\u003cp\u003eGDC offers IAM for granular access control to resources, ensuring that only authorized users can access specific resources, adhering to the principle of least privilege.\u003c/p\u003e\n"]]],[],null,["# IAM permissions preparation\n\nBefore you perform tasks on virtual machines (VM) in\nGoogle Distributed Cloud (GDC) air-gapped, you must have the proper identity and access\n(IAM) roles and permissions.\n\nBefore you begin\n----------------\n\nTo use gdcloud CLI commands, complete the required steps from the\n[gdcloud command-line interface (CLI)](/distributed-cloud/hosted/docs/latest/gdch/resources/gdcloud-overview)\nsections. All commands for Google Distributed Cloud air-gapped use the\n`gdcloud` or `kubectl` CLI, and require an operating system (OS) environment.\n\n### Get the kubeconfig file path\n\nTo run commands against the Management API server, ensure you have the following\nresources:\n\n1. [Sign in and generate](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in#cli) the\n kubeconfig file for the Management API server if you don't have one.\n\n2. Use the path to the kubeconfig file of the Management API server to replace\n \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e in these instructions.\n\nAbout IAM\n---------\n\nDistributed Cloud offers Identity and Access Management (IAM) for\ngranular access to specific Distributed Cloud resources and prevents\nunwanted access to other resources. IAM operates on the security\nprinciple of least privilege and provides control over who has permission\nto given resources using IAM roles and permissions.\n\nRead the IAM documentation in\n[Sign in](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in), which provides\ninstructions for signing in to the GDC console or the\ngdcloud CLI and using `kubectl` to access your workloads.\n\n### Predefined roles to VM resources\n\nTo create VMs and VM disks in a project, request the appropriate permissions\nfrom your Project IAM Admin for a given project. All VM roles must bind to the\nnamespace of the project where the VM resides. To manage virtual machines,\nyour Project IAM Admin can assign you the following predefined roles:\n\n- **Project VirtualMachine Admin** `project-vm-admin`: Manages VMs in the project namespace.\n- **Project VirtualMachine Image Admin** `project-vm-image-admin`: Manages VM images in the project namespace.\n\nFor a list of all predefined roles for Application Operators (AO), see\n[Role descriptions](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-descriptions).\n\nThe following are predefined common roles for VMs. For details on common roles,\nsee\n[Common roles](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-descriptions#common_roles).\n\n- **VM type viewer** `vm-type-viewer`: has read access to predefined VM types.\n- **Public image viewer** `public-image-viewer`: has read access to images GDC provides.\n\nTo grant or receive access to VM resources, see\n[Grant access to project resources](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/role-bindings).\n\nVerify user access to VM resources\n----------------------------------\n\n1. [Log in](/distributed-cloud/hosted/docs/latest/gdch/application/ao-user/iam/sign-in#cli) as the\n user requesting or verifying permissions.\n\n2. Verify whether you, or the user, can create virtual machines:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i create virtualmachines.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n Replace the variables by using the following definitions.\n\n - If the output is `yes`, you have permissions to create a VM in the project \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e.\n - If the output is `no`, you don't have permissions. Contact your Project IAM Admin and request assignment to the Project VirtualMachine Admin (`project-vm-admin`) role in the namespace of the project where the VM resides.\n3. Optional: Verify whether users have access to project-level VM images. For\n example, run the following commands to verify if they can create and use\n `VirtualMachineImage` resources at the project level:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i get virtualmachineimages.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER\u003c/var\u003e auth can-i create virtualmachineimageimports.virtualmachine.gdc.goog -n \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e\n\n Replace the variables by using the following definitions.\n\n - If the output is `yes`, the user has permissions to access custom VM images in the project \u003cvar translate=\"no\"\u003ePROJECT\u003c/var\u003e.\n - If the output is `no`, you don't have permissions. Contact your Project IAM Admin role and request assignment to the Project VirtualMachine Image Admin (`project-vm-image-admin`) role in the namespace of the project where the VM resides."]]