文档

put-bucket-request-payment

更新时间:

put-bucket-request-payment用于设置某个存储空间(Bucket)的请求者付费模式。

注意事项

  • 阿里云账号默认拥有配置Bucket的请求者付费模式的权限。如果您需要通过RAM用户或者STS的方式进行添加修改,您必须拥有oss:PutBucketRequestPayment权限。具体操作,请参见为RAM用户授权自定义的权限策略

  • 如果您在Bucket上启用了请求者付费模式,则不允许匿名访问该Bucket。请求方必须提供身份验证信息,以便OSS能够识别请求方,从而对请求方而非Bucket拥有者收取请求所产生的费用。当请求者是通过扮演阿里云RAM角色来请求数据时,该角色所属的账户将为此请求付费。

  • 如果您在Bucket上启用了请求者付费模式,请求方必须在其请求中包含x-oss-request-payer:requester(在POST、GET和HEAD请求的Header信息中),以表明请求方已知悉请求和数据下载将产生费用。否则,请求方无法通过验证。数据拥有者访问该Bucket时,可以不携带x-oss-request-payer请求头。数据拥有者作为请求者访问该Bucket时,请求产生的费用由数据拥有者(也是请求者)来支付。

命令格式

ossutil api put-bucket-request-payment --bucket value --request-payment-configuration value [flags]

参数

类型

说明

--bucket

string

Bucket的名称。

--request-payment-configuration

string

请求付费配置的容器。

说明

put-bucket-request-payment命令对应API接口PutBucketRequestPayment。关于API中的具体参数含义,请参见PutBucketRequestPayment

--request-payment-configuration

--request-payment-configuration配置选项既支持XML语法也支持JSON语法,当选项值包含file://前缀时,表示从文件中读取配置。

  • XML语法:

    <RequestPaymentConfiguration>
      <Payer>string</Payer>
    </RequestPaymentConfiguration>
  • JSON语法:

    {
      "Payer": "string"
    }
说明

关于支持的全局命令行选项,请参见支持的全局命令行选项

使用示例

以下示例展示了如何为存储空间examplebucket设置请求者付费模式。

  • 使用XML配置文件,request-payment-configuration.xml内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <RequestPaymentConfiguration>
      <Payer>Requester</Payer>
    </RequestPaymentConfiguration>

    命令示例如下:

    ossutil api put-bucket-request-payment --bucket examplebucket --request-payment-configuration file://request-payment-configuration.xml
  • 使用JSON配置文件,request-payment-configuration.json内容如下:

    {
      "Payer": "Requester"
    }

    命令示例如下:

    ossutil api put-bucket-request-payment --bucket examplebucket --request-payment-configuration file://request-payment-configuration.json
  • 使用JSON配置参数,命令示例如下:

    ossutil api put-bucket-request-payment --bucket examplebucket --request-payment-configuration "{\"Payer\":\"Requester\"}"