本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
同账号同区域复制是指将某个账号某个地域下源存储空间(Bucket)的文件(Object)的创建、更新和删除等操作自动、异步(近实时)地复制到当前账号相同地域下的目标Bucket。本文介绍如何进行同账号同区域复制。
前提条件
已某账号的某地域创建了Bucket A(源Bucket),并记录账号UID、Bucket A名称及地域。
已在相同账号和地域创建了Bucket B(目标Bucket),并记录Bucket B名称。
角色类型
执行同账号同区域复制时,需要指定用于源Bucket与目标Bucket之间执行复制操作的角色。您可以选择以下任意角色完成同账号同区域复制任务。
您可以选择通过RAM用户创建角色,RAM用户必须拥有以下权限:ram:CreateRole
、ram:GetRole
、ram:ListPoliciesForRole
、ram:AttachPolicyToRole
。考虑到授予RAM用户ram:CreateRole
、ram:GetRole
等角色相关的权限风险较大,建议通过RAM用户关联的阿里云账号创建RAM角色并完成角色授权。授权完成后,RAM用户可以直接复用阿里云账号创建的RAM角色。
创建同账号同区域复制规则时,支持选择新建角色来完成复制任务。选择新建角色后,后台将自动创建格式为oss-replication-{uuid}
的角色,并根据是否选择复制KMS加密对象授予不同权限策略。
选择复制KMS加密对象
新建角色后,您需要按照页面指引完成角色授权操作。授权完成后,该角色拥有源Bucket同步到目标Bucket精准权限策略以及AliyunKMSFullAccess(管理密钥管理服务KMS的权限)。
选择不复制KMS加密对象
新建角色后,您需要按照页面指引完成角色授权操作。授权完成后,该角色拥有源Bucket同步到目标Bucket精准权限策略。
创建同账号同区域复制规则时,支持选择AliyunOSSRole角色来完成复制任务。选择该角色后,后台会根据是否选择复制KMS加密对象授予不同权限策略。
选择复制KMS加密对象
选择AliyunOSSRole角色后,后台将自动为AliyunOSSRole角色授予以下权限策略:AliyunOSSFullAccess(管理对象存储OSS的权限)以及AliyunKMSFullAccess(管理密钥管理服务KMS的权限)。
该角色拥有当前账号下所有Bucket以及KMS的所有操作权限,权限范围较大,请谨慎使用。
选择不复制KMS加密对象
选择AliyunOSSRole角色后,后台将自动为AliyunOSSRole角色授予AliyunOSSFullAccess(管理对象存储OSS的权限)。
该角色拥有当前账号下所有Bucket所有操作权限,权限范围较大,请谨慎使用。
创建同账号同区域复制规则时,支持使用自定义角色来完成复制任务。您需要通过RAM控制台创建自定义角色,并为角色赋予相关权限。
创建普通服务角色。
创建角色过程中,需选择可信实体类型为阿里云服务,角色类型选择普通服务角色,受信服务选择对象存储。具体步骤,请参见创建普通服务角色。
为角色授权。
您可以选择以下任意方式为角色授权。
为RAM角色授予系统策略为RAM角色授予自定义策略您可以选择为RAM角色授予系统策略
AliyunOSSFullAccess
。AliyunOSSFullAccess
默认拥有当前账号下所有Bucket的所有操作权限,请谨慎使用。如果您希望将KMS加密的Object复制到目标Bucket,您还需要为角色授予
AliyunKMSFullAccess
系统策略。具体步骤,请参见为RAM角色授权。
建议您选择为RAM角色授予源Bucket(src-bucket)和目标Bucket(dest-bucket)复制所需的最小权限。
实际使用时,请相应替换源Bucket和目标Bucket名称。
{ "Version":"1", "Statement":[ { "Effect":"Allow", "Action":[ "oss:ReplicateList", "oss:ReplicateGet" ], "Resource":[ "acs:oss:*:*:src-bucket", "acs:oss:*:*:src-bucket/*" ] }, { "Effect":"Allow", "Action":[ "oss:ReplicateList", "oss:ReplicateGet", "oss:ReplicatePut", "oss:ReplicateDelete" ], "Resource":[ "acs:oss:*:*:dest-bucket", "acs:oss:*:*:dest-bucket/*" ] } ] }
具体步骤,请参见为RAM角色授权。
如果您希望将KMS加密的Object复制到目标Bucket,您还需要为角色授予
AliyunKMSFullAccess
系统策略。
操作步骤
- 本页导读 (1)
- 前提条件
- 角色类型
- 操作步骤
- 使用OSS控制台
- 使用阿里云SDK
- 使用命令行工具ossutil
- 使用REST API