Control de acceso con IAM

El Servicio de transferencia de almacenamiento utiliza los permisos y roles de administración de identidades y accesos (IAM) para controlar quién puede acceder a los recursos del Servicio de transferencia de almacenamiento. Los dos tipos principales de recursos disponibles en el Servicio de transferencia de almacenamiento son trabajos y operaciones. En la jerarquía de políticas de IAM, los trabajos son recursos secundarios de los proyectos y las operaciones son recursos secundarios de los trabajos.

Para otorgar acceso a un recurso, usted asigna uno o más permisos o roles a un usuario, grupo o una cuenta de servicio.

Permisos

Puede otorgar los siguientes permisos del Servicio de transferencia de almacenamiento:

Permisos de proyectos de transferencia

Permiso Descripción
storagetransfer.projects.getServiceAccount Puede leer la cuenta de servicio de Google (GoogleServiceAccount) que usa el Servicio de transferencia de almacenamiento para acceder a los depósitos de Cloud Storage.

Permisos de trabajos de transferencia

En la siguiente tabla, se describen los permisos para los trabajos del Servicio de transferencia de almacenamiento:

Permiso Descripción
storagetransfer.jobs.create Puede crear nuevos trabajos de transferencia.
storagetransfer.jobs.delete Puede eliminar trabajos de transferencia existentes.

Los trabajos de transferencia se eliminan llamando a la función parche. Sin embargo, los usuarios deben tener este permiso al eliminar trabajos de transferencia para evitar errores de permisos.
storagetransfer.jobs.get Puede recuperar trabajos específicos.
storagetransfer.jobs.list Puede enumerar todos los trabajos de transferencia.
storagetransfer.jobs.patch Puede actualizar las configuraciones de trabajo de transferencia sin eliminarlas.

Permisos de operaciones de transferencia

La siguiente tabla describe los permisos para las operaciones del Servicio de transferencia de almacenamiento:

Permiso Descripción
storagetransfer.operations.cancel Puede cancelar las operaciones de transferencia.
storagetransfer.operations.get Puede obtener detalles de las operaciones de transferencia.
storagetransfer.operations.list Puede enumerar todas las operaciones de trabajo de transferencia.
storagetransfer.operations.pause Puede pausar las operaciones de transferencia.
storagetransfer.operations.resume Puede reanudar las operaciones de transferencia en pausa.

Permisos de grupo de agentes de transferencia

En la siguiente tabla, se describen los permisos para los grupos de agentes de transferencia de datos locales:

Permiso Descripción
storagetransfer.agentpools.create Puede crear grupos de agentes.
storagetransfer.agentpools.update Puede actualizar grupos de agentes.
storagetransfer.agentpools.delete Puede borrar grupos de agentes.
storagetransfer.agentpools.get Puede obtener información sobre grupos de agentes específicos.
storagetransfer.agentpools.list Puede enumerar la información de todos los grupos de agentes del proyecto.

Funciones predefinidas

En esta sección, se describen los roles predefinidos del Servicio de transferencia de almacenamiento. Los roles son la forma preferida de configurar los permisos de IAM.

Comparación de roles

Puedes asignar la siguiente función de proyecto o funciones predefinidas del servicio de transferencia de almacenamiento:

Función Editor (roles/editor) Transferencia de almacenamiento(roles/storagetransfer.)
Administrador (admin) Usuario (user) Visualizador (viewer)
Enumera u obtén trabajos
Crear trabajos
Actualizar trabajos
borrar trabajos
Listar/obtener operaciones de transferencia
Pausar/reanudar operaciones de transferencia
Lee los detalles de la cuenta de servicio de Google que usa el servicio de transferencia de almacenamiento para acceder a los depósitos de Cloud Storage.
Enumera grupos de agentes
Crear grupos de agentes
Actualizar grupos de agentes
Borrar grupos de agentes
Obtén grupos de agentes

El permiso Actualizar trabajos no incluye permiso para eliminar trabajos.

Para la transferencia de datos locales, se requiere la función Administrador de transferencia de almacenamiento (roles/storagetransfer.admin) para lo siguiente:

  • Mostrar lista de agentes
  • Leer el límite de ancho de banda del proyecto
  • Establecer el límite de ancho de banda del proyecto

Detalles de la función

La siguiente tabla describe en detalle los roles predefinidos para el Servicio de transferencia de almacenamiento:

Función Descripción Permisos incluidos
Administrador de transferencia de almacenamiento
(roles/storagetransfer.
admin
)

Proporciona todos los permisos del Servicio de transferencia de almacenamiento, incluida la eliminación de trabajos.

Justificación: Este es el rol de más alto nivel con las responsabilidades más amplias, el superusuario que apoya a sus colegas mientras realizan las transferencias. Esto es más adecuado para las personas que administrarán transferencias, como los administradores de TI.

Todos los permisos otorgados
Administrador de transferencia de almacenamiento
(roles/storagetransfer.
user
)

Proporciona permisos para que el usuario cree, obtenga, actualice y enumere trabajos de transferencia dentro del proyecto. Sin embargo, no pueden eliminar sus propios trabajos.

Justificación: Este rol permite la separación de las tareas de creación y mantenimiento de trabajos de la tarea de eliminar trabajos. Esta función es la más adecuada para los usuarios que deben ejecutar transferencias como parte de su función laboral, como un empleado. Esta función no permite que se elimine la transferencia, de modo que los auditores o el personal de seguridad puedan ver un registro completamente conservado de las transferencias pasadas.

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.create
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.jobs.patch
  • storagetransfer.operations.get
  • storagetransfer.operations.list
  • storagetransfer.operations.pause
  • storagetransfer.operations.resume
Visualizador de transferencia de almacenamiento
(roles/storagetransfer.
viewer
)

Proporciona permisos para enumerar y obtener trabajos y operaciones de transferencia dentro del proyecto. El usuario no puede programar, actualizar o eliminar trabajos.

Justificación: La función de visor está destinada al acceso de solo lectura para ver trabajos y operaciones de transferencia. Este rol permite separar las tareas de informe y auditoría de las tareas de creación y mantenimiento de trabajos. Este rol es más adecuado para usuarios o equipos internos que auditan el uso de transferencias, como seguridad, cumplimiento o líderes de unidades de negocios.

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.operations.get
  • storagetransfer.operations.list
Agente de transferencia de almacenamiento (roles/storagetransfer.transferAgent)

Otorga a los agentes de transferencia de datos locales los permisos de Pub/Sub y del Servicio de transferencia de almacenamiento necesarios para completar una transferencia.

Otorga este rol al usuario o la cuenta de servicio que usan los agentes.

  • storagetransfer.operations.get
  • storagetransfer.operations.report
  • storagetransfer.operations.assign
  • storagetransfer.agentpools.report
  • pubsub.topics.create
  • pubsub.topics.get
  • pubsub.topics.list
  • pubsub.subscriptions.create
  • pubsub.subscriptions.get
  • pubsub.subscriptions.delete
  • pubsub.subscriptions.consume
  • pubsub.topics.attachSubscription
  • pubsub.topics.publish

Funciones personalizadas

Puedes crear y aplicar roles de IAM personalizados para cumplir con los requisitos de acceso de tu organización.

Cuando crees roles personalizados, te recomendamos usar una combinación de roles predefinidos para garantizar que los permisos correctos se incluyan juntos.

Google Cloud Console no funcionará correctamente si el rol personalizado no tiene los permisos necesarios. Por ejemplo, algunas partes de Cloud Console suponen que la función tiene acceso de lectura para mostrar un elemento antes de editarlo, por lo que una función con permisos solo de escritura experimentará pantallas de Cloud Console que no funcionan.

¿Qué sigue?