Sender bezahlt

Diese Seite bietet einen Überblick über die Funktion "Sender bezahlt" für Cloud Storage. Informationen zum Einrichten und Nutzen dieser Funktion finden Sie unter "Sender bezahlt" verwenden.

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 Zugriffsgebü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 "Sender bezahlt" in Ihrem Bucket aktiviert ist, können Sie Sender dazu verpflichten, ihren Anfragen ein Abrechnungsprojekt hinzuzufügen. Das Projekt des Senders wird dann in Rechnung gestellt. Die Aktivierung der Funktion "Sender 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

Selbst wenn die Funktion "Sender bezahlt" aktiviert ist, werden die folgenden Kosten immer dem Projekt mit dem Bucket berechnet:

Beschränkungen

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

  • Sie können einen Bucket mit der Funktion "Sender bezahlt" nicht für Export- und Importvorgänge in Cloud SQL verwenden.

Anforderungen für Zugriff und Verwendung

Zum Verwenden der Funktion "Sender 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:

  • Sender, 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 Rollen roles/editor und roles/owner enthalten diese erforderliche Berechtigung.

  • Sender, die kein Abrechnungsprojekt hinzufügen, jedoch die Berechtigung resourcemanager.projects.createBillingAssignment für das Projekt haben, das den Bucket enthält. Die Rolle roles/billing.projectManager enthält diese 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 dem Fehler 400 UserProjectMissing fehl.

Zusätzlich zu diesen Anforderungen muss der Sender ü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 gsutil rewrite, müssen Sie ein Abrechnungsprojekt hinzufügen, wenn für den Quell- oder Ziel-Bucket (oder beide) die Option "Sender 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

Wenn Sie einen Vorgang ausführen, der mehrere Anfragen erfordert, z. B. einen mehrteiligen Upload, muss jede Anfrage im Vorgang das gleiche Abrechnungsprojekt enthalten, das Sie im Projekt des Nutzers angeben. Wenn die Anfragen verschiedene Abrechnungsprojekte enthalten, schlägt der gesamte Vorgang fehl und Sie erhalten den Fehler 400 UserProjectInconsistent.

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 "Sender 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.