Pagos del solicitante

Configuración

En esta página se ofrece una descripción general de la función de pagos del solicitante de Cloud Storage.

Introducción

Cada vez que un usuario accede a un recurso de Cloud Storage, como un contenedor o un objeto, se aplican cargos asociados a la creación y ejecución de la solicitud.

Normalmente, se factura al propietario del proyecto del recurso por estos cargos. Sin embargo, si el solicitante proporciona un proyecto de facturación con su solicitud, se factura al proyecto del solicitante. Si habilitas la función de pagos del solicitante en tu segmento, puedes requerir que los solicitantes incluyan un proyecto de facturación en sus solicitudes y, de este modo, facturar al proyecto del solicitante. Habilitar la opción "El pagador es el solicitante" es útil, por ejemplo, si tienes muchos datos que quieres poner a disposición de los usuarios, pero no quieres que se te cobre por su acceso a esos datos.

Restricciones

Se aplican las siguientes restricciones al usar la opción de pago por el solicitante:

  • No puedes usar un segmento que tenga habilitada la opción Paga el solicitante para importar y exportar datos de Cloud SQL.
  • No puedes usar un segmento en el que esté habilitada la función de pagos del solicitante para exportar datos de Pub/Sub.

Requisitos de uso y acceso

Para habilitar los pagos del solicitante en un segmento, habilita la marca de metadatos en el segmento. Una vez habilitado, solo los siguientes usuarios podrán acceder al contenedor o a su contenido:

  • Los solicitantes que incluyan un proyecto de facturación en su solicitud. El proyecto utilizado en la solicitud debe estar en buen estado y el usuario debe tener un rol en el proyecto que contenga el permiso serviceusage.services.use. El rol Consumidor de uso de servicios contiene el permiso necesario.

  • Los solicitantes que no incluyan un proyecto de facturación, pero que tengan el permiso resourcemanager.projects.createBillingAssignment para el proyecto que contiene el segmento. El rol Gestor de proyectos de facturación incluye el permiso necesario. Los cargos por acceso asociados a estas solicitudes se facturan al proyecto que contiene el contenedor.

Todas las demás solicitudes al contenedor fallarán y se devolverá un error 400 UserProjectMissing.

Además de estos requisitos, el solicitante debe tener permiso suficiente para realizar la acción solicitada. Por ejemplo, un usuario que proporcione un proyecto de facturación válido en su solicitud no podrá subir objetos al contenedor a menos que también tenga permiso explícito para hacerlo, como el permiso storage.objects.create para ese contenedor o para el proyecto que lo contiene.

Cuando inhabilite la opción Paga el solicitante, debe incluir un proyecto de facturación en su solicitud o tener el permiso resourcemanager.projects.createBillingAssignment.

Operaciones facturadas por la fuente

Las operaciones que tienen un segmento de origen y un segmento de destino, como las copias o las reescrituras, se facturan al proyecto que contiene el segmento de origen. En la mayoría de los casos, como las llamadas directas mediante las APIs JSON y XML, solo tienes que incluir un proyecto de facturación si el contenedor de origen tiene habilitado Paga el solicitante.

En algunos casos, como gcloud storage cp con una marca --no-clobber, debe incluir un proyecto de facturación si la función de pagos del solicitante está habilitada en el segmento de origen, en el de destino o en ambos. Esto se debe a que estas operaciones hacen llamadas a los dos cubos (el de origen y el de destino) durante la ejecución de la acción.

Operaciones de solicitudes múltiples

En las operaciones que requieren varias solicitudes para completarse, el uso de billing projects en sus solicitudes tiene los siguientes comportamientos:

Siguientes pasos