Anforderer bezahlt

Einrichtung

Diese Seite bietet einen Überblick über die Funktion "Anforderer bezahlt" für Cloud Storage.

Einführung

Wenn ein Nutzer auf eine Cloud Storage-Ressource wie einen Bucket oder ein Objekt zugreift, fallen die folgenden Gebühren für die Erstellung und Ausführung der Anfrage an:

Normalerweise werden diese Gebühren dem Projektinhaber der Ressource in Rechnung gestellt. Wenn der Sender jedoch ein Abrechnungsprojekt mit seiner Anfrage einreicht, wird stattdessen das Projekt des Senders in Rechnung gestellt. Wenn die Funktion "Anfragesteller bezahlt" in Ihrem Bucket aktiviert ist, können Sie Anfragesteller dazu verpflichten, ihren Anfragen ein Abrechnungsprojekt hinzuzufügen. Die Kosten werden dann für das Projekt des Anfragestellers in Rechnung gestellt. Die Aktivierung der Funktion "Anforderer bezahlt" ist beispielsweise nützlich, wenn Sie Nutzern viele Daten zur Verfügung stellen möchten, ohne für deren Zugriff auf diese Daten bezahlen zu müssen.

Nicht enthaltene Kosten

Gebühren für Datenspeicher, einschließlich Gebühren für vorzeitiges Löschen, werden immer für das Projekt berechnet, das den Bucket enthält. , auch wenn die Funktion „Sender bezahlt“ aktiviert ist.

Beschränkungen

Die Verwendung von "Anforderer bezahlt" unterliegt den folgenden Beschränkungen:

  • Sie können einen Bucket mit der Funktion "Anforderer bezahlt" nicht für Export- und Importvorgänge in Cloud SQL verwenden.
  • Sie können einen Bucket mit aktivierter Funktion „Anforderer bezahlt“ nicht für Exporte aus Pub/Sub verwenden.

Anforderungen für Zugriff und Verwendung

Zum Verwenden der Funktion "Anforderer bezahlt" für einen Bucket aktivieren Sie das Metadaten-Flag im gewünschten Bucket. Nach der Aktivierung können nur die folgenden Nutzer auf den Bucket oder dessen Inhalt zugreifen:

  • Anfragesteller, die ihrer Anfrage ein Abrechnungsprojekt hinzufügen. Das in der Anfrage verwendete Projekt muss einwandfrei sein. Außerdem muss der Nutzer im Projekt eine Rolle mit der Berechtigung serviceusage.services.use haben. Die Rolle Dienstnutzungsnutzer enthält die erforderliche Berechtigung.

  • Anfragesteller, die kein Abrechnungsprojekt hinzufügen, jedoch die Berechtigung resourcemanager.projects.createBillingAssignment für das Projekt haben, das den Bucket enthält. Die Rolle Projektabrechnungs-Manager enthält die erforderliche Berechtigung. Zugriffsgebühren für solche Anfragen werden dem Projekt in Rechnung gestellt, das den Bucket enthält.

Alle anderen Anfragen an den Bucket schlagen mit einem 400 UserProjectMissing-Fehler fehl.

Zusätzlich zu diesen Anforderungen muss der Anforderer über ausreichende Berechtigungen verfügen, um die angeforderte Aktion auszuführen. Ein Nutzer, der seiner Anfrage ein gültiges Abrechnungsprojekt hinzufügt, kann beispielsweise nur Objekte in den Bucket hochladen, wenn er ausdrücklich dazu berechtigt ist, z. B. wenn er die Berechtigung storage.objects.create für diesen Bucket oder das darin enthaltene Projekt besitzt.

Quellbezogene Abrechnungsvorgänge

Vorgänge, die sowohl einen Quell-Bucket als auch einen Ziel-Bucket enthalten, z. B. eine Kopie oder einen wiederholten Schreibvorgang, werden für das Projekt mit dem Quell-Bucket berechnet. In den meisten Fällen, z. B. bei Direktaufrufen mithilfe der JSON und XML APIs, müssen Sie nur dann ein Abrechnungsprojekt hinzufügen, wenn für den Quell-Bucket die Option "Sender bezahlt" aktiviert ist.

In einigen Fällen, z. B. bei gcloud storage cp mit dem Flag --no-clobber, müssen Sie ein Abrechnungsprojekt hinzufügen, wenn für den Quell- oder Ziel-Bucket (oder beides) die Option "Anforderer bezahlt" aktiviert ist. Dies liegt daran, dass während eines solchen Vorgangs Aufrufe sowohl an die Quell- als auch an die Ziel-Buckets erfolgen.

Vorgänge mit mehreren Anfragen

Für Vorgänge, bei denen mehrere Anfragen abgeschlossen werden müssen, unterliegt die Verwendung von Abrechnungsprojekten in Ihren Anfragen den folgenden Verhaltensweisen:

Abrechnung

Die Kosten für das Hinzufügen eines Abrechnungsprojekts zu Ihrer Anfrage werden nicht separat in Ihrer Rechnung aufgeführt. Angenommen, Sie führen mehrere Downloads über einen "Anfragesteller bezahlt"-Bucket aus, und Sie verwenden das Projekt my-project als Abrechnungsprojekt für die Anfrage. Wenn my-project auch einen Bucket enthält, über den Sie Downloads durchführen, werden in der Rechnung nur die Gesamtkosten für Ihre kombinierten Downloads aufgeführt. Es wird nicht zwischen den Downloads aus Ihrem eigenen Bucket und denen aus dem "Sender bezahlt"-Bucket unterschieden.

Wenn Sie zwischen Gebühren für Ihre eigenen Cloud Storage-Ressourcen und Gebühren unterscheiden möchten, die mit der Hinzufügung von Abrechnungsprojekten zu Ihren Anfragen verbunden sind, müssen Sie ein Projekt erstellen, das keine Cloud Storage-Ressourcen enthält. Dieses Projekt wird dann für Anfragen bezüglich Ressourcen in anderen Projekten verwendet, wie z. B. "Sender bezahlt"-Buckets.

Nächste Schritte