Pagos del solicitante

Ir a ejemplos

En esta página, se proporciona una descripción general de la característica de pagos del solicitante para Cloud Storage.

Introducción

Cada vez que un usuario accede a un recurso de Cloud Storage, como un depósito o un objeto, hay cargos asociados con la creación y ejecución de la solicitud. Estos cargos incluyen lo siguiente:

Por lo general, al propietario del proyecto del recurso se le facturan estos cargos de acceso; sin embargo, si el solicitante proporciona un proyecto de facturación con su solicitud, ese proyecto recibirá la facturación en su lugar. Con la función de pagos del solicitante habilitada en tu depósito, puedes hacer que los solicitantes deban incluir un proyecto de facturación en sus solicitudes y, así, enviar las facturas al proyecto del solicitante. Habilitar la función de pagos del solicitante es útil, por ejemplo, si tienes muchos datos que quieres que estén disponibles para los usuarios, pero no deseas que se te cobre por el acceso a esos datos.

Cargos no cubiertos

Los siguientes cargos siempre se aplican al proyecto que contiene el depósito, incluso si los pagos del solicitante están habilitados:

Restricciones

Se aplican las siguientes restricciones cuando se usan los pagos del solicitante:

  • No puedes usar un depósito que tenga habilitados los pagos del solicitante para importaciones y exportaciones desde Cloud SQL.

Requisitos de uso y acceso

Para habilitar los pagos del solicitante en un depósito, habilita la marca de metadatos en él. Una vez habilitado, solo los siguientes usuarios pueden acceder al depósito o a sus contenidos:

  • Solicitantes que incluyen un proyecto de facturación en su solicitud. El proyecto usado en la solicitud debe estar en regla y el usuario debe tener una función en el proyecto que contenga el permiso serviceusage.services.use. Las funciones de editor y propietario contienen el permiso requerido.

  • Solicitantes que no incluyen un proyecto de facturación, pero tienen el permiso resourcemanager.projects.createBillingAssignment para el proyecto que contiene el depósito. La función administrador de proyectos de facturación contiene el permiso requerido. Los cargos de acceso asociados a estas solicitudes se facturan en el proyecto que contiene el depósito.

Todas las demás solicitudes al depósito generan un error 400 UserProjectMissing.

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

Operaciones facturadas en la fuente

Las operaciones que tienen un depósito fuente y un depósito de destino, como una copia o una reescritura, se cobran al proyecto que contiene el depósito fuente. En la mayoría de los casos, como las llamadas directas con las API de JSON y XML, solo tienes que incluir un proyecto de facturación si el depósito fuente tiene habilitada la característica de pagos del solicitante.

En algunos casos, como gsutil rewrite, debes incluir un proyecto de facturación si el depósito de origen o el de destino (o ambos) tienen habilitados los pagos del solicitante. Esto sucede porque esas operaciones realizan llamadas a ambos depósitos en el transcurso de la acción.

Operaciones de solicitudes múltiples

Cuando se realiza una operación que requiere varias solicitudes, como una carga en varias partes, cada solicitud en la operación debe contener el mismo proyecto de facturación, que se especifica en el proyecto del usuario. Si el proyecto de facturación cambia entre solicitudes, la operación general fracasa y muestra un error 400 UserProjectInconsistent.

Facturación

Los cargos asociados con la inclusión de un proyecto de facturación en tu solicitud no aparecen por separado en tu facturación. Por ejemplo, supongamos que realizas varias descargas desde un depósito con pagos del solicitante y usas el proyecto my-project para facturar la solicitud. Si my-project también contiene un depósito desde el cual realizas descargas, tu factura solo muestra los cargos totales de tus descargas combinadas. No distingue entre las descargas desde tu propio depósito y las que realizas desde el depósito con pagos del solicitante.

Si deseas distinguir entre los cargos de tus propios recursos de Cloud Storage y los de incluir proyectos de facturación en tus solicitudes, debes crear un proyecto que no contenga recursos de Cloud Storage: este proyecto se dedicará a hacer solicitudes a recursos en otros proyectos, como los depósitos con cargos del solicitante.

Próximos pasos