この操作を呼び出して、バケットに対してリクエスト元支払いモードを有効にできます。
使用上の注意
バケットに対してリクエスト元支払いモードを有効にする場合は、次の点に注意してください。
匿名ユーザーからのアクセスは拒否されます
バケットに対してリクエスト元支払いモードを有効にした場合、匿名ユーザーはバケットにアクセスできません。 リクエスト元は OSS に認証情報を提供する必要があります。これにより、OSS はリクエスト元を識別し、リクエストとトラフィックに対して課金できます。
リクエスト元が Alibaba Cloud アカウントの RAM ロールを引き受けてデータをリクエストする場合、OSS はリクエスト元によって送信されたリクエストと生成されたトラフィックに対してこの Alibaba Cloud アカウントに課金します。
リクエスト元はリクエストで x-oss-request-payer ヘッダーを指定する必要があります
バケットに対してリクエスト元支払いモードを有効にした場合、リクエスト元は POST、GET、または HEAD リクエストで x-oss-request-payer:requester ヘッダーを指定する必要があります。 このヘッダーは、リクエスト元がリクエストとダウンロードされたデータに対して課金されることを理解していることを示します。 リクエスト元が、リクエスト元支払いモードが有効になっているバケットに送信されたリクエストで x-oss-request-payer ヘッダーを指定しない場合、リクエストは認証に失敗します。
バケット所有者は、バケットへのアクセスに送信するリクエストで x-oss-request-payer ヘッダーを指定する必要はありません。 この場合、バケット所有者は、送信したリクエストとリクエストによって生成されたトラフィックに対して課金されます。
リクエスト構造
PUT /?requestPayment HTTP/1.1
Date: GMT Date
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<RequestPaymentConfiguration>
<Payer>Requester</Payer>
</RequestPaymentConfiguration>
リクエストヘッダー
PutBucketRequestPayment リクエストには、共通のリクエストヘッダーのみが含まれています。 詳細については、「共通リクエストヘッダー」をご参照ください。
リクエスト要素
要素 | タイプ | 必須 | 説明 |
RequestPaymentConfiguration | コンテナー | はい | リクエスト元支払いモードの構成を格納するコンテナー。 子ノード: Payer |
Payer | 文字列 | はい | リクエストとトラフィック料金の支払者。 有効な値:
親ノード: RequestPaymentConfiguration |
レスポンスヘッダー
PutBucketRequestPayment リクエストへのレスポンスには、共通のレスポンスヘッダーのみが含まれています。 詳細については、「共通レスポンスヘッダー」をご参照ください。
例
リクエスト例
PUT /?requestPayment
Content-Length: 83
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 23 Jul 2019 01:33:47 GMT
Authorization: OSS qn6q**************:77Dv****************
<RequestPaymentConfiguration>
<Payer>Requester</Payer>
</RequestPaymentConfiguration>
レスポンス例
200 (OK)
content-length: 0
x-oss-request-id: 5D3663FBB007B79097FC****
date: Tue, 23 Jul 2019 01:33:47 GMT
SDK
ossutil
PutBucketRequestPayment 操作に対応する ossutil コマンドについては、「put-bucket-request-payment」をご参照ください。
エラーコード
エラーコード | HTTP ステータスコード | 説明 |
NoSuchBucket | 404 | 指定されたバケットが存在しないために返されるエラーメッセージ。 |