Descripción de las funciones

Si utilizas un método de la API de Cloud en Cloud IAM, la identidad que realice la solicitud de la API debe tener los permisos necesarios para utilizar el recurso. Para concederlos, primero tienes que otorgarle funciones a un usuario, un grupo o una cuenta de servicio.

En esta página se describen las funciones de Cloud IAM que puedes asignar a las entidades para que accedan a los recursos de Cloud Platform.

Requisitos previos a la utilización de esta guía

Funciones básicas

Las funciones que existían antes que Cloud IAM (propietario, editor y lector) seguirán desempeñando la misma labor. Se trata de funciones concéntricas: los permisos de editor están incluidos en la función de propietario, mientras que los permisos del lector también se incluyen en la función de editor.

En la siguiente tabla se describen los permisos que abarcan las funciones básicas en todos los servicios de Cloud Platform:

Nombre de función Denominación de la función Permisos
roles/viewer Lector Permisos para realizar acciones de solo lectura que no modifiquen ningún estado.
roles/editor Editor Todos los permisos de la función de lector y, además, permisos para realizar acciones con las que se puedan modificar los estados.
roles/owner Propietario Todos los permisos de la función de editor y, además, permisos para realizar las siguientes acciones:
  • Administrar el control de acceso a un proyecto y a todos sus recursos.
  • Configurar la facturación de un proyecto.
Nota:
  • Si se te concede la función de propietario en el nivel de recursos (en un tema de pub/sub, por ejemplo), no obtendrás la función de propietario en el proyecto principal.
  • La función de propietario no incluye ningún permiso para el recurso de organización. Por lo tanto, si se te concede dicha función en el nivel de la organización, no podrás actualizar los metadatos de la organización, aunque sí podrás modificar sus proyectos.

Puedes aplicar las funciones básicas en el nivel del proyecto a través de la Consola de APIs, la API y la herramienta gcloud.

Flujo de invitaciones

No puedes utilizar la API de IAM o gcloud para conceder la función de propietario a los miembros de un proyecto. Solo puedes añadir a propietarios mediante la Consola de APIs. El miembro del proyecto recibirá una invitación por correo electrónico y deberá aceptarla de manera explícita para poder convertirse en uno de los propietarios del proyecto.

No se envían invitaciones por correo electrónico en los siguientes casos:

  • Si intentas conceder una función que no sea la de propietario.
  • Si el propietario de una organización incluye al propietario de otra organización como propietario de un proyecto de su organización.

Funciones predefinidas

Además de las funciones básicas, Cloud IAM incluye funciones predefinidas que brindan un acceso pormenorizado a recursos específicos de Google Cloud Platform. De esta forma se evita el acceso no deseado a los demás recursos.

En la siguiente tabla se incluye una lista de dichas funciones, su descripción y los tipos de recursos con los que se pueden utilizar. Puedes conceder varias funciones a un mismo usuario. Por ejemplo, un usuario puede tener las funciones de administrador de red y de visor de registros en un proyecto y, además, ser el editor de un tema pub/sub en ese mismo proyecto.

Nombre de función Denominación de la función Descripción Tipo de recurso
Funciones de administrador de recursos
roles/
resourcemanager.organizationAdmin
Administrador de la organización Brinda acceso para administrar todos los recursos que sean propiedad de la organización. Organización
roles/
resourcemanager.organizationViewer
Lector de organización Brinda acceso para ver los proyectos de la organización. Organización
roles/
resourcemanager.projectCreator
Creador de proyectos Brinda acceso para crear nuevos proyectos. Si un usuario crea un proyecto, se le concede automáticamente la función de propietario de dicho proyecto. Organización
Funciones de proyecto
roles/
browser
Beta
Navegador Brinda acceso para explorar las organizaciones y los proyectos. Organización
Proyecto
roles/
iam.serviceAccountActor
Actor de cuenta de servicio

Acceso para conseguir las credenciales de una cuenta de servicio y ejecutar operaciones desde dicha cuenta.

Proyecto
Cuenta de servicio
Funciones de App Engine
roles/
appengine.appAdmin
Administrador de App Engine Acceso de lectura, escritura y modificación de los ajustes y las configuraciones de todas las aplicaciones. Organización
Proyecto
roles/
appengine.serviceAdmin
Administrador de servicios de App Engine Acceso de solo lectura a los ajustes y las configuraciones de todas las aplicaciones.
Acceso de escritura a los ajustes de los módulos y las versiones. No puede desplegar una nueva versión.
Organización
Proyecto
roles/
appengine.deployer
Implementador de App Engine Acceso de solo lectura a los ajustes y las configuraciones de todas las aplicaciones.
Acceso de escritura con el que solo se pueden crear nuevas versiones, pero no se pueden modificar las que ya se han creado (solo se pueden eliminar aquellas que ya no reciben tráfico).
Organización
Proyecto
roles/
appengine.viewer
Lector de App Engine Acceso de solo lectura a los ajustes y las configuraciones de todas las aplicaciones. Organización
Proyecto
Funciones de Cloud BigQuery
roles/
bigquery.user
Usuario de BigQuery Concede permisos para ejecutar tareas en el proyecto (consultas incluidas). Organización
Proyecto
roles/
bigquery.dataViewer
Lector de datos de BigQuery

Si se utiliza en un conjunto de datos, la función de lector de datos otorga permisos para realizar las siguientes acciones:

  • Leer los metadatos del conjunto de datos y mostrar sus tablas.
  • Leer los datos y metadatos de las tablas del conjunto de datos.

Si se aplica en los niveles de proyecto o de organización, esta función también permite ver una lista de todos los conjuntos de datos del proyecto. No obstante, necesitas funciones adicionales para poder ejecutar las tareas.

Organización
Proyecto
Conjunto de datos
roles/
bigquery.dataEditor
Editor de datos de BigQuery

Si se utiliza en un conjunto de datos, la función de editor de datos otorga permisos para realizar las siguientes acciones:

  • Leer los metadatos del conjunto de datos y mostrar sus tablas.
  • Crear, obtener, actualizar y eliminar las tablas del conjunto de datos.

Si se aplica en los niveles de proyecto o de organización, esta función también sirve para crear nuevos conjuntos de datos.

Organización
Proyecto
Conjunto de datos
roles/
bigquery.dataOwner
Propietario de datos de BigQuery

Si se utiliza en un conjunto de datos, la función de propietario de datos otorga permisos para realizar las siguientes acciones:

  • Leer, actualizar y eliminar el conjunto de datos.
  • Crear, obtener, actualizar y eliminar las tablas del conjunto de datos.

Si se aplica en los niveles de proyecto o de organización, esta función también sirve para crear nuevos conjuntos de datos.

Organización
Proyecto
Conjunto de datos
roles/
bigquery.admin
Administrador de BigQuery Concede permisos para administrar todos los recursos del proyecto. Con esta función puedes administrar los datos de todo el proyecto y cancelar las tareas que hayan ejecutado otros usuarios en él. Organización
Proyecto
Funciones de facturación de Cloud
roles/
billing.admin
Administrador de cuenta de facturación Brinda acceso para ver y administrar las cuentas de facturación en su totalidad. Organización
Cuenta de facturación
roles/
billing.projectManager
Administrador de facturación de proyectos Brinda acceso para asignar la cuenta de facturación de un proyecto o inhabilitar la facturación. Organización
Proyecto
roles/
billing.user
Usuario de la cuenta de facturación Brinda acceso para asociar proyectos a cuentas de facturación. Organización
Cuenta de facturación
roles/
billing.creator
Creador de cuenta de facturación Brinda acceso para crear cuentas de facturación. Organización
Proyecto
Funciones de Stackdriver Debugger
roles/
clouddebugger.agent
Agente del depurador Otorga permisos para registrar el objetivo de depuración, detectar los puntos de interrupción activos e informar de los resultados relacionados con dichos puntos. Proyecto
Cuenta de servicio
roles/
clouddebugger.user
Usuario del depurador Proporciona permisos para crear, consultar, mostrar y eliminar puntos de interrupción (capturas y líneas de código donde se escribe un mensaje al log), así como para mostrar los objetivos de depuración (elementos depurados). Proyecto
Funciones de Compute Engine
roles/
compute.instanceAdmin
Beta
Administrador de instancias de Compute

Permisos para crear, modificar y eliminar instancias de máquinas virtuales, incluido los permisos para crear, modificar y eliminar discos.

Si un usuario va a administrar instancias de máquina virtual que están configuradas para ejecutarse como una cuenta de servicio, también debes concederle a dicho usuario la función roles/iam.serviceAccountActor.

Por ejemplo, otórgale esta función al miembro de tu empresa que se encarga de administrar grupos de instancias de máquinas virtuales, pero que no administra los ajustes de red o seguridad, ni tampoco las instancias que se ejecutan como cuentas de servicio.

Organización
Proyecto
roles/
compute.networkViewer
Beta
Lector de red de Compute

Acceso de solo lectura a todos los recursos de red.

Por ejemplo, si tienes un software encargado de analizar la configuración de red, puedes concederle a la cuenta de servicio de dicho software la función networkViewer.

Organización
Proyecto
roles/
compute.networkAdmin
Administrador de red de Compute

Permiso para crear, modificar y eliminar los recursos de red, excepto las reglas de cortafuegos y los certificados SSL. La función de administrador de red incluye acceso de solo lectura a las reglas de cortafuegos, los certificados SSL y las instancias (con el objetivo de consultar las direcciones IP efímeras). Los usuarios que tengan la función de administrador de red no pueden crear, iniciar, detener ni eliminar instancias.

Por ejemplo, si tu empresa cuenta con un equipo de seguridad que administra los cortafuegos y los certificados SSL, además de un equipo de red que administra el resto de los recursos de red, concédele la función networkAdmin al segundo equipo.

Organización
Proyecto
roles/
compute.securityAdmin
Administrador de seguridad de Compute

Permiso para crear, modificar y eliminar reglas de cortafuegos y certificados SSL.

Por ejemplo, si tu empresa cuenta con un equipo de seguridad que administra los cortafuegos y los certificados SSL; además de un equipo de red que administra el resto de los recursos de red, concédele la función securityAdmin al primer equipo.

Organización
Proyecto
roles/
compute.imageUser
Beta
Usuario de imágenes de Compute Engine

Permiso para mostrar y consultar las imágenes (no se incluye ningún otro permiso relacionado con los recursos del proyecto). Los usuarios con la función compute.imageUser pueden mostrar todas las imágenes del proyecto y crear recursos basados en dichas imágenes (como instancias y discos persistentes).

Organización
Proyecto
roles/
compute.storageAdmin
Beta
Administrador de Compute Storage

Permiso para crear, modificar y eliminar discos, imágenes y capturas.

Por ejemplo, si en tu empresa hay una persona que administra las imágenes y no quieres que tenga la función de editor en el proyecto, asígnale a su cuenta la función storageAdmin.

Organización
Proyecto
Funciones de Kubernetes Engine
roles/
container.admin
Administrador de Kubernetes Engine Brinda acceso para administrar los clústeres de contenedor en su totalidad y los objetos de la API de Kubernetes. Organización
Proyecto
roles/
container.clusterAdmin
Administrador de clústeres de Kubernetes Engine Brinda acceso para administrar los clústeres de contenedor. Organización
Proyecto
roles/
container.developer
Desarrollador de Kubernetes Engine Brinda acceso completo a los objetos de la API de Kubernetes en los clústeres de contenedor. Organización
Proyecto
roles/
container.viewer
Lector de Kubernetes Engine Brinda acceso de solo lectura a los recursos de Kubernetes Engine. Organización
Proyecto
Funciones de Cloud Dataflow
roles/
dataflow.viewer
Beta
Lector de Dataflow Brinda acceso de solo lectura a todos los recursos relacionados con Dataflow. Organización
Proyecto
roles/
dataflow.developer
Beta
Desarrollador de Dataflow Otorga los permisos necesarios para ejecutar y manipular las tareas de Dataflow. Organización
Proyecto
roles/
dataflow.worker
Beta
Trabajador de Dataflow Concede los permisos necesarios para que una cuenta de servicio de Compute Engine ejecute unidades de trabajo para una canalización de Dataflow. Organización
Proyecto
Funciones de Cloud Dataproc
roles/
dataproc.editor
Beta
Editor de Dataproc Concede los permisos necesarios para que una cuenta de servicio de Compute Engine ejecute unidades de trabajo para una canalización de Dataflow. Organización
Proyecto
roles/
dataproc.viewer
Beta
Lector de Dataproc Brinda acceso de solo lectura a los recursos de Dataproc. Organización
Proyecto
Funciones de Cloud Datastore
roles/
datastore.viewer
Lector de Datastore Brinda acceso de lectura a los recursos de Datastore. Organización
Proyecto
roles/
datastore.indexAdmin
Administrador de índices de Datastore Brinda acceso completo para administrar definiciones de índices. Organización
Proyecto
roles/
datastore.owner
Propietario de Datastore Brinda acceso completo a los recursos de Datastore. Organización
Proyecto
Funciones de IAM
roles/
iam.securityReviewer
Revisor de seguridad Otorga permisos para mostrar todos los recursos y sus políticas de IAM. Organización
Proyecto
Funciones de Stackdriver Logging
roles/
logging.viewer
Lector de registros Brinda acceso para consultar los registros. Organización
Proyecto
roles/
logging.logWriter
Escritor de registros Otorga los permisos necesarios para escribir entradas de registro. Organización
Proyecto
roles/
logging.privateLogViewer
Lector de registros privados Otorga los permisos de la función Lector de registros y, además, brinda acceso de solo lectura a las entradas de los registros privados. Organización
Proyecto
roles/
logging.configWriter
Escritor de configuración de registros Concede los permisos necesarios para leer y escribir las configuraciones de las métricas basadas en registros y los destinos de datos utilizados para exportarlos. Organización
Proyecto
Funciones de Cloud Pub/Sub
roles/
pubsub.publisher
Editor de Pub/Sub Brinda acceso para publicar mensajes en un tema. Proyecto
Tema
roles/
pubsub.subscriber
Suscriptor de Pub/Sub Brinda acceso para consumir mensajes de una suscripción y para vincular suscripciones a un tema. Proyecto
Tema
Suscripción
roles/
pubsub.viewer
Lector de Pub/Sub Brinda acceso para ver temas y suscripciones. Proyecto
Tema
Suscripción
roles/
pubsub.editor
Editor de Pub/Sub Brinda acceso para modificar temas y suscripciones, así como para publicar y consumir mensajes. Proyecto
Tema
Suscripción
roles/
pubsub.admin
Administrador de Pub/Sub Brinda acceso completo a los temas y las suscripciones. Proyecto
Tema
Suscripción
Funciones de Service Management
roles/
servicemanagement.quotaAdmin
Administrador de cuota Brinda acceso para administrar las cuotas de servicio. Organización
Proyecto
roles/
servicemanagement.quotaViewer
Lector de cuota Brinda acceso para consultar las cuotas de servicio. Organización
Proyecto
Funciones de Cloud Storage
roles/
storage.objectCreator
Creador de objetos de Storage Permite que los usuarios creen objetos. No obstante, no pueden eliminarlos ni sobrescribirlos. Organización
Proyecto
roles/
storage.objectViewer
Lector de objetos de Storage Brinda acceso para ver los objetos y sus metadatos (a excepción de las LCA). Organización
Proyecto
roles/
storage.objectAdmin
Administrador de objetos de Storage Concede el control total de los objetos. Organización
Proyecto
roles/
storage.admin
Administrador de Storage Concede el control total de los objetos y los segmentos. Organización
Proyecto
Funciones de Cloud Deployment Manager
roles/
deploymentmanager.viewer
Lector de Deployment Manager Brinda acceso de solo lectura a todos los recursos relacionados con Deployment Manager. Organización
Proyecto
roles/
deploymentmanager.editor
Editor de Deployment Manager Otorga los permisos necesarios para crear y administrar los despliegues. Organización
Proyecto
Funciones de Cloud Build
roles/
builds.editor
Editor de Cloud Build Brinda acceso para crear y anular compilaciones. Organización
Proyecto
roles/
builds.viewer
Lector de Cloud Build Brinda acceso para ver las compilaciones. Organización
Proyecto
Funciones del repositorio de código de Cloud
roles/
source.admin
Administrador de repositorios de código Brinda acceso de administración a los repositorios. Organización
Proyecto
roles/
source.reader
Lector de repositorios de código Brinda acceso de lectura a los repositorios. Organización
Proyecto
roles/
source.writer
Escritor de repositorios de código Brinda acceso de lectura y escritura a los repositorios. Organización
Proyecto

Documentación de IAM específica de cada producto

La documentación de IAM específica de cada producto incluye información detallada sobre las funciones predefinidas de cada producto. Consulta las siguientes páginas para obtener más información sobre dichas funciones.

Documentación Descripción
IAM para Compute Engine Describe las funciones de IAM para Compute Engine.
IAM para App Engine Describe las funciones de IAM para App Engine.
IAM para Cloud Storage Describe las funciones de IAM para Cloud Storage.
IAM para Cloud BigQuery Describe las funciones de IAM para Cloud BigQuery.
IAM para Stackdriver Logging Describe las funciones de IAM para Stackdriver Logging.
IAM para Cloud Pub/Sub Describe las funciones de IAM para Cloud Pub/Sub.
IAM para Cloud Dataflow Describe las funciones de IAM para Cloud Dataflow.
IAM para Stackdriver Debugger Describe las funciones de IAM para Stackdriver Debugger.
IAM para proyectos Describe las funciones de IAM para los proyectos.
IAM para organizaciones Describe las funciones de IAM para las organizaciones.
IAM para Cloud Deployment Manager Describe las funciones de IAM para Deployment Manager.
IAM para Cloud Datastore Describe las funciones y los permisos de IAM para Cloud Datastore.
IAM para Cloud Dataproc Describe las funciones y los permisos de IAM para Cloud Dataproc.
IAM para Google Kubernetes Engine Describe las funciones y los permisos de IAM para Google Kubernetes Engine.
IAM para Cloud DNS Describe las funciones y los permisos de IAM para Cloud DNS.
IAM para Google Genomics Describe las funciones y los permisos de IAM para Google Genomics.
IAM para Stackdriver Trace Describe las funciones y los permisos de IAM para Stackdriver Trace.
IAM para la API de facturación de Cloud Describe las funciones y los permisos de IAM para la API de facturación de Cloud.
IAM para Cloud Deployment Manager Describe las funciones y los permisos de IAM para Cloud Deployment Manager.
IAM para Service Management Describe las funciones y los permisos de IAM para Service Management.

Siguientes pasos