Questa pagina fornisce una panoramica della funzionalità Pagamenti a carico del richiedente per Cloud Storage.
Introduzione
Ogni volta che un utente accede a una risorsa Cloud Storage, ad esempio un bucket o un oggetto, vengono addebitati costi associati alla creazione ed esecuzione della richiesta. Questi addebiti includono:
Addebiti per l'elaborazione dei dati per operazioni, replica e recupero dei dati.
Costi di utilizzo della rete per la lettura dei dati.
Normalmente, al proprietario del progetto della risorsa vengono addebitati questi costi; tuttavia, se il richiedente fornisce un progetto di fatturazione con la sua richiesta, viene addebitato il progetto del richiedente. Con la funzionalità Pagamenti a carico del richiedente abilitata nel bucket, puoi richiedere ai richiedenti di includere un progetto di fatturazione nelle loro richieste, fatturando così il progetto del richiedente. L'attivazione di Richiedente paga è utile, ad esempio, se hai molti dati che vuoi rendere disponibili agli utenti, ma non vuoi che ti venga addebitato l'accesso a questi dati.
Addebiti non coperti
Gli addebiti per l'archiviazione dei dati, inclusi gli addebiti per l'eliminazione anticipata, vengono sempre applicati al progetto che contiene il bucket, anche se è attivata l'opzione Richiedente paga.
Limitazioni
Quando utilizzi la funzionalità Richiedente paga, si applicano le seguenti limitazioni:
- Non puoi utilizzare un bucket con la funzionalità Richiedente paga abilitata per le importazioni e le esportazioni da Cloud SQL.
- Non puoi utilizzare un bucket con i pagamenti a carico del richiedente abilitati per le esportazioni da Pub/Sub.
Requisiti di utilizzo e accesso
Per attivare i pagamenti a carico del richiedente in un bucket, attiva il flag dei metadati nel bucket. Una volta attivato, solo i seguenti utenti possono accedere al bucket o ai relativi contenuti:
I richiedenti che includono un progetto di fatturazione nella richiesta. Il progetto utilizzato nella richiesta deve essere in regola e l'utente deve avere un ruolo nel progetto che contiene l'autorizzazione
serviceusage.services.use
. Il ruolo Utente servizio di utilizzo contiene l'autorizzazione richiesta.I richiedenti che non includono un progetto di fatturazione, ma dispongono dell'autorizzazione
resourcemanager.projects.createBillingAssignment
per il progetto che contiene il bucket. Il ruolo Responsabile progetto di fatturazione contiene l'autorizzazione richiesta. I costi di accesso associati a queste richieste vengono addebitati al progetto che contiene il bucket.
Tutte le altre richieste al bucket non vanno a buon fine e restituiscono un errore 400 UserProjectMissing
.
Oltre a questi requisiti, il richiedente deve disporre di un'autorizzazione sufficiente per eseguire l'azione richiesta. Ad esempio, un utente che
fornisce un progetto di fatturazione valido nella sua richiesta non può caricare oggetti nel
bucket a meno che non disponga anche dell'autorizzazione esplicita per farlo, ad esempio se dispone dell'autorizzazione
storage.objects.create
per il bucket o per il progetto che
lo contiene.
Quando disattivi la funzionalità Richiedente paga, devi includere un progetto di fatturazione nella tua
richiesta o disporre dell'autorizzazione resourcemanager.projects.createBillingAssignment
.
Operazioni con fatturazione all'origine
Le operazioni che hanno sia un bucket di origine sia un bucket di destinazione, ad esempio una copia o una riscrittura, vengono addebitate al progetto che contiene il bucket di origine. Nella maggior parte dei casi, ad esempio le chiamate dirette tramite le API JSON e XML, devi includere un progetto di fatturazione solo se nel bucket source è abilitata l'opzione Richiedente paga.
In alcuni casi, ad esempio gcloud storage cp
con un flag --no-clobber
, devi includere un progetto di fatturazione se il bucket di origine o quello di destinazione (o entrambi) hanno abilitato i pagamenti a carico del richiedente. Questo perché tali operazioni effettuano
chiamate ai bucket di origine e di destinazione durante l'esecuzione
dell'azione.
Operazioni di richieste multiple
Per le operazioni che richiedono più richieste per essere completate, l'utilizzo di progetti di fatturazione nelle richieste ha i seguenti comportamenti:
Per i caricamenti ripristinabili, solo la prima richiesta deve includere un progetto di fatturazione e si applica all'intero caricamento. I progetti di fatturazione specificati nelle richieste successive vengono ignorati.
Per le riscritture con l'API JSON e i caricamenti multiparte dell'API XML, ogni richiesta può utilizzare un progetto di fatturazione diverso e un progetto di fatturazione specificato in una richiesta precedente non si applica alle richieste successive.
Fatturazione
Gli addebiti associati all'inclusione di un progetto di fatturazione nella richiesta non
vengono visualizzati separatamente nella fatturazione. Ad esempio, supponiamo che tu esegua diversi download da un bucket con pagamenti a carico del richiedente e che utilizzi il progetto my-project
come progetto a cui addebitare la richiesta. Se my-project
contiene anche un bucket
da cui esegui i download, la fattura mostra solo gli addebiti totali
per i download combinati. Non distingue tra i download
dal tuo bucket e quelli dal bucket Requester Pays.
Se vuoi distinguere tra gli addebiti delle tue risorse Cloud Storage e quelli derivanti dall'inclusione di progetti di fatturazione nelle tue richieste, devi creare un progetto che non contenga risorse Cloud Storage: questo progetto è quindi dedicato all'invio di richieste a risorse in altri progetti, come i bucket Requester Pays.
Passaggi successivi
- Scopri come utilizzare i pagamenti a carico del richiedente.
- Rendere i dati disponibili pubblicamente.