バケットでのリクエスタ支払いの設定
Amazon S3 バケットをリクエスタ支払いバケットに設定して、バケット所有者の代わりにリクエスタがリクエストとデータダウンロードの費用を支払うようにすることができます。
このセクションでは、コンソールと REST API を使用して Amazon S3 バケットでリクエスタ支払いを設定する方法の例を示します。
S3 バケットのリクエスタ支払いを有効にするには
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
[バケット] のリストで、リクエスタ支払いを有効にするバケットの名前を選択します。
-
[プロパティ] を選択します。
-
[リクエスタ支払い] で、[編集] を選択します。
-
[有効化] を選択し、[変更を保存] を選択します。
Amazon S3 は、[バケットのリクエスタ支払い] を有効にし、[バケットの概要] を表示します。[リクエスタ支払い] の下に、[有効] と表示されます
バケット所有者のみが、バケットのRequestPaymentConfiguration.payer
の設定値をBucketOwner
(デフォルト) またはRequester
に設定できます。requestPayment
リソースの設定はオプションです。デフォルトでは、バケットはリクエスタ支払いバケットではありません。
リクエスタ支払いバケットを通常のバケットに戻すには、値 BucketOwner
を使用します。通常、Amazon S3 バケットにデータをアップロードする際に BucketOwner
を使用し、その後、バケット内のオブジェクトを公開する前に値を Requester
に設定します。
requestPayment を設定するには
-
PUT
リクエストを使用して、指定したバケットのPayer
の値をRequester
に設定します。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>
リクエストが成功すると、Amazon S3 は、以下のようなレスポンスを返します。
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
リクエスタ支払いは、バケットレベルでのみ設定できます。バケット内の特定のオブジェクトに対してリクエスタ支払いを設定することはできません。
バケットは、いつでも自由に BucketOwner
または Requester
に設定できます。ただし、新しい設定値が有効になるまでに数分かかる場合があります。
注記
特に URL の有効期限がとても長い場合、署名付き URL を提供するバケット所有者は、バケットをリクエスタ支払いに設定する前によく検討してください。バケット所有者は、バケット所有者の認証情報を使用する署名付き URL をリクエスタが使用するたびに課金されます。