You need to enable JavaScript to run this app.
导航
PutBucketReplication
最近更新时间:2024.08.07 11:09:58首次发布时间:2023.03.14 21:02:15

功能描述

此接口用于为存储桶(Bucket)设置跨区域复制规则或同区域复制规则。通过 PutBucketReplication 接口,您可以将新创建的对象及修改的对象从一个源桶复制到相同地域或不同地域的目标桶中。

前提条件

如果您设置的是跨账号跨区域复制规则或跨账号同区域复制规则,则在设置规则前,您必须先授予 TOS 源桶读权限和目标桶的写权限。具体操作,请参见跨账号复制的权限配置

请求消息样式

PUT /?replication HTTP/1.1
Host: bucketname.tos-cn-beijing.volces.com
Date: Fri, 30 Jul 2021 08:05:36 +0000
Authorization: authorization string
Content-Length: 120
Content-MD5: XrY7u+Ae7tCTyyK7j1rNww==
{
  "Role": "ServiceRoleforReplicationAccessTOS",
  "Rules": [{
      "ID": "1",
      "Status": "Enabled",
      "PrefixSet": ["prefix_1", "prefix_2"],
      "Destination": {
        "Bucket": "Target Bucket Name",
        "Location": "cn-beijing",
        "StorageClass": "STANDARD"
      },
      "HistoricalObjectReplication": "Enabled",
      "AccessControlTranslation": {
        "Owner": "BucketOwnerEntrusted"
      }
   }]
}

请求参数和消息头

该请求使用的公共请求消息头,请参见公共参数

名称

位置

参数类型

是否必选

示例值

说明

replication

Query

String

-

代表 PutBucketReplication 请求的特殊标识。

请求元素

名称

参数类型

是否必选

示例值

说明

Role

String

ServiceRoleforReplicationAccessTOS

角色名称。该角色必须具有 TOS 的读写权限及服务访问权限,您也可以使用 TOS 默认角色 ServiceRoleforReplicationAccessTOS

Rules

Array

-

复制规则信息。

ID

String

1

规则的唯一标识符,小于 255 字符。

Status

String

Enabled

指定是否启用该规则,取值说明如下:

  • Enabled:启用该规则。
  • Disabled:不启用该规则。

PrefixSet

Array

prefix_1

适用该规则的对象名前缀。

Tags

Array

-

TOS 可针对有特定标签的 Object 进行复制,最多可配置 10 个标签。关于标签的详细说明,请参见文件标签管理

Key

String

key

对象标签的键。
父节点:Tags

Value

String

value

对象标签的值。
父节点:Tags

Destination

Object

-

目标桶信息。

Bucket

String

Target Bucket Name

目标桶名称。

Location

String

cn-beijing

目标桶所在的地域。

StorageClass

String

STANDARD

指定复制到目标存储桶的对象的存储类型,取值说明如下:

  • STANDARD:标准存储。
  • STANDARD_IA:低频访问存储。
  • INTELLIGENT_TIERING: 智能分层存储。
  • GLACIER_IR: 归档闪回存储。
  • ARCHIVE: 归档存储。
  • COLD_ARCHIVE:冷归档存储。
  • DEEP_COLD_ARCHIVE:深度冷归档存储。

    说明

    深度冷归档目前处于邀测状态,如您需要使用该存储类型,请联系客户经理。

如果同时设置了 StorageClassStorageClassInheritDirective 参数,优先根据 StorageClass指定的值设置对象的存储类型。

StorageClassInheritDirective

String

DESTINATION_BUCKET

设置复制到目标存储桶的对象存储类型,取值说明如下:

  • SOURCE_OBJECT:继承源桶对象的存储类型。
  • DESTINATION_BUCKET:继承目标存储桶的默认存储类型。

HistoricalObjectReplication

String

Enabled

是否开启复制历史对象,如果开启,会复制符合这条规则的历史对象,取值说明如下:

  • Enabled:开启复制历史对象。
  • Disabled:不开启复制历史对象。

TransferType

String

说明

在中国内地和中国内地以外地区进行跨区域复制场景下,为必选参数。

tos_acc

指定跨区域复制时使用的数据传输链路,取值说明如下:

  • internal:TOS 默认传输链路。该链路仅允许在中国内地和中国内地之间进行跨区域复制数据时使用。
  • tos_acc:传输加速链路。该链路仅允许在中国内地和中国内地以外地区之间进行跨区域复制数据时使用。

默认值为 internal

说明

  • 使用传输加速链路传输数据前,您必须开启传输加速功能,且开启后不能关闭,详细介绍,请参见开启传输加速
  • 传输加速为邀测功能,如需试用,请联系客户经理。
  • 传输加速是单独的计费项,使用传输加速功能时,TOS 会同时收取源端桶的跨区域复制流量费用和传输加速流出流量费用。详细介绍,请参见传输加速费用

AccessControlTranslation

Object

-

对象的所有者管理权限。

说明

仅跨账号复制对象时,需要设置 AccessControlTranslation 参数。

Owner

String

BucketOwnerEntrusted

仅支持设置为 BucketOwnerEntrusted,表示将复制的对象授予目的存储桶所有者管理权限,即目的存储桶将拥有读取对象,授予其他账号读取对象的权限。默认目标存储桶所有者可以覆盖和删除对象,但是不能读取对象,也不能授予其他账号读取对象的权限。
父节点:AccessControlTranslation

说明

仅跨账号复制对象时,需要设置 Owner 参数。

响应消息头

该请求返回的公共响应消息头,请参见公共参数

响应元素

该请求响应中无消息元素。

请求示例

PUT /?replication HTTP/1.1
Host: bucketname.tos-cn-beijing.volces.com
Date: Fri, 30 Jul 2021 08:05:36 +0000
Authorization: authorization string
Content-Length: 120
Content-MD5: XrY7u+Ae7tCTyyK7j1rNww==
{
  "Role": "ServiceRoleforReplicationAccessTOS",
  "Rules": [{
      "ID": "1",
      "Status": "Enabled",
      "PrefixSet": ["prefix_1", "prefix_2"],
      "Destination": {
        "Bucket": "Target Bucket Name",
        "Location": "cn-beijing",
        "StorageClass": "STANDARD"
      },
      "HistoricalObjectReplication": "Enabled",
      "AccessControlTranslation": {
        "Owner": "BucketOwnerEntrusted"
      }
   }]
}

响应示例

HTTP/1.1 200 OK
x-tos-id-2: f91b0c03a01300c1-a444ed0        
x-tos-request-id: f91b0c03a01300c1-a444ed0            
Date: Fri, 30 Jul 2021 06:45:39 GMT
server: TosServer