Konfigurieren von Zahlung durch den Anforderer für einen Bucket
Sie können einen Amazon-S3-Bucket als Bucket mit Zahlung durch den Anforderer konfigurieren, damit anstelle des Bucket-Eigentümers der Anforderer die Kosten für die Anforderung und den Datendownload übernimmt.
Dieser Abschnitt enthält Beispiele für die Konfiguration von Zahlung durch den Anforderer auf einem Amazon-S3-Bucket über die Konsole und die REST-API.
So aktivieren Sie die Zahlung durch den Anforderer für einen S3-Allzweck-Bucket
Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie im linken Navigationsbereich Allzweck-Buckets aus.
-
Wählen Sie in der Liste Allzweck-Bucket den Namen des Buckets, für den Sie die Zahlung durch den Anforderer aktivieren möchten.
-
Wählen Sie Properties (Eigenschaften).
-
Wählen Sie unter Requester pays (Zahlung durch Anforderer) die Option Edit (Bearbeiten).
-
Wählen Sie Enable (Aktivieren) und wählen Sie Save changes (Änderungen speichern) aus.
Amazon S3 aktiviert die Zahlung durch den Anforderer für Ihren Bucket und zeigt Ihre Bucket-Übersicht an. Unter Zahlung durch den Anforderer sehen Sie Aktiviert
Nur der Bucket-Eigentümer kann den Konfigurationswert RequestPaymentConfiguration.payer eines Buckets auf BucketOwner (den Standardwert) oder Requester setzen. Die Einrichtung der Ressource requestPayment ist optional. Standardmäßig ist der Bucket kein Bucket mit Zahlung durch den Anforderer.
Um einen Bucket mit Zahlung durch den Anforderer in einen regulären Bucket umzuwandeln, verwenden Sie den Wert BucketOwner. In der Regel verwenden Sie BucketOwner zum Hochladen von Daten in den Amazon-S3-Bucket. Dann würden Sie den Wert auf Requester setzen, bevor Sie die Objekte in dem Bucket veröffentlichen.
Einrichten von requestPayment
-
Verwenden Sie eine
PUT-Anforderung, um den WertPayerfür einen bestimmten Bucket aufRequesterzu setzen.PUT ?requestPayment HTTP/1.1 Host:[BucketName].s3.amazonaws.com Content-Length: 173 Date: Wed, 01 Mar 2009 12:00:00 GMT Authorization: AWS[Signature]<RequestPaymentConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Payer>Requester</Payer> </RequestPaymentConfiguration>
War die Anfrage erfolgreich, gibt Amazon S3 eine Antwort zurück, die etwa wie folgt aussieht.
HTTP/1.1 200 OK x-amz-id-2: [id] x-amz-request-id: [request_id] Date: Wed, 01 Mar 2009 12:00:00 GMT Content-Length: 0 Connection: close Server: AmazonS3 x-amz-request-charged:requester
Sie können Zahlung durch den Anforderer nur auf Bucket-Ebene festlegen. Sie können Zahlung durch den Anforderer nicht für bestimmte Objekte innerhalb des Buckets festlegen.
Sie können einen Bucket jederzeit als BucketOwner oder Requester konfigurieren. Es kann jedoch einige Minuten dauern, bis der neue Konfigurationswert aktiv ist.
Anmerkung
Bucket-Eigentümer, die vorsignierte URLs ausgeben, sollten sich gut überlegen, ob sie einen Bucket als Bucket mit Zahlung durch den Anforderer konfigurieren sollten, insbesondere, wenn die URL eine lange Lebensdauer hat. Der Bucket-Eigentümer muss jedes Mal die Gebühren zahlen, wenn der Auftraggeber eine vorsignierte URL verwendet, die die Anmeldeinformationen des Bucket-Eigentümers verwendet.