Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Antes de realizar tareas en máquinas virtuales (VM) en Google Distributed Cloud (GDC) aislado, debes tener los roles y permisos adecuados de Identity and Access Management (IAM).
Antes de comenzar
Para usar los comandos de la CLI de gdcloud, completa los pasos necesarios de las secciones de la interfaz de línea de comandos (CLI) de gdcloud. Todos los comandos para Google Distributed Cloud con aislamiento de aire usan las CLI de gdcloud o kubectl y requieren un entorno de sistema operativo (SO).
Obtén la ruta de acceso del archivo kubeconfig
Para ejecutar comandos en el servidor de la API de Management, asegúrate de tener los siguientes recursos:
Accede y genera el archivo kubeconfig para el servidor de la API de Management si no tienes uno.
Usa la ruta de acceso al archivo kubeconfig del servidor de la API de administración para reemplazar MANAGEMENT_API_SERVER en estas instrucciones.
Acerca de IAM
Distributed Cloud ofrece Identity and Access Management (IAM) para brindar acceso detallado a recursos específicos de Distributed Cloud y evitar el acceso no deseado a otros recursos. IAM opera según el principio de seguridad de privilegio mínimo y proporciona control sobre quién tiene permiso para acceder a recursos determinados a través de roles y permisos de IAM.
Lee la documentación de IAM en Acceder, que proporciona instrucciones para acceder a la consola de GDC o a la CLI de gdcloud y usar kubectl para acceder a tus cargas de trabajo.
Roles predefinidos para recursos de VM
Para crear VMs y discos de VM en un proyecto, solicita los permisos correspondientes al administrador de IAM del proyecto. Todos los roles de VM deben vincularse al espacio de nombres del proyecto en el que reside la VM. Para administrar máquinas virtuales, el administrador de IAM del proyecto puede asignarte los siguientes roles predefinidos:
Administrador de VirtualMachine del proyectoproject-vm-admin: Administra las VMs en el espacio de nombres del proyecto.
Project VirtualMachine Image Adminproject-vm-image-admin: Administra imágenes de VM en el espacio de nombres del proyecto.
Para obtener una lista de todos los roles predefinidos para los operadores de aplicaciones (AO), consulta Descripciones de roles.
A continuación, se indican los roles comunes predefinidos para las VMs. Para obtener detalles sobre los roles comunes, consulta Roles comunes.
Visualizador de tipos de VMvm-type-viewer: Tiene acceso de lectura a los tipos de VM predefinidos.
Visualizador de imágenes públicaspublic-image-viewer: Tiene acceso de lectura a las imágenes que proporciona GDC.
Reemplaza las variables con las siguientes definiciones.
Variable
Reemplazo
MANAGEMENT_API_SERVER
El archivo kubeconfig del sistema de gdcloud auth login.
PROJECT
Es el nombre del proyecto para crear imágenes de VM.
Si el resultado es yes, tienes permiso para crear una VM en el proyecto PROJECT.
Si el resultado es no, significa que no tienes permisos. Comunícate con el administrador de IAM del proyecto y solicita que te asigne el rol de administrador de máquinas virtuales del proyecto (project-vm-admin) en el espacio de nombres del proyecto en el que reside la VM.
Opcional: Verifica si los usuarios tienen acceso a imágenes de VM a nivel del proyecto. Por ejemplo, ejecuta los siguientes comandos para verificar si pueden crear y usar recursos VirtualMachineImage a nivel del proyecto:
Reemplaza las variables con las siguientes definiciones.
Variable
Reemplazo
MANAGEMENT_API_SERVER
Es el archivo kubeconfig del servidor de la API de Management.
PROJECT
Nombre del proyecto en el que se crean las imágenes de VM.
Si el resultado es yes, el usuario tiene permisos para acceder a imágenes de VM personalizadas en el proyecto PROJECT.
Si el resultado es no, significa que no tienes permisos. Comunícate con tu administrador de IAM del proyecto y solicita que se te asigne el rol de administrador de imágenes de máquinas virtuales del proyecto (project-vm-image-admin) en el espacio de nombres del proyecto en el que reside la VM.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 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."]]