設定儲存貯體上的申請者付款 - Amazon Simple Storage Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定儲存貯體上的申請者付款

您可以將 Amazon S3 儲存貯體設定成申請者付款儲存貯體,因此是由申請者而非儲存貯體擁有者支付要求和資料下載成本費用。

本節提供如何使用 主控台和 REST 在 Amazon S3 儲存貯體上設定請求者付款的範例API。

為 S3 儲存貯體啟用申請者付款
  1. 登入 AWS Management Console 並在 Word 開啟 Amazon S3 主控台。 https://console.aws.amazon.com/s3/

  2. Buckets (儲存貯體) 清單中,按一下要啟用申請者付款的儲存貯體名稱。

  3. 選擇 Properties (屬性)。

  4. Requester pays (申請者付款) 底下,選擇 Edit (編輯)

  5. 依序選擇 Enable (啟用)Save changes (儲存變更)

    Amazon S3 隨即會為儲存貯體啟用申請者付款,然後顯示 Bucket overview (儲存貯體概觀)。您會在 Requester pays (申請者付款) 底下看到 Enabled (已啟用)

只有儲存貯體擁有者可將儲存貯體的 RequestPaymentConfiguration.payer 組態值設成 BucketOwner (預設值) 或 RequesterrequestPayment 資源為選擇性設定。儲存貯體預設不是申請者付款的儲存貯體。

若要將申請者付款的儲存貯體還原為一般的儲存貯體,請使用 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

您只可以設定儲存貯體層級的申請者付款。您無法設定儲存貯體內特定物件的申請者付款。

您可以隨時將儲存貯體設定成 BucketOwnerRequester。但需要經過幾分鐘才會讓新的組態生效。

注意

提供預先簽署 URLs 的儲存貯體擁有者在將儲存貯體設定為請求者付款之前,應仔細考慮,特別是如果 URL 有很長的生命週期。每次請求者使用使用使用儲存貯體擁有者憑證的預先簽章 URL 時,都會向儲存貯體擁有者收取費用。