在阿里云OSS(对象存储服务)中,如果你希望在同一个地域下跨账号进行对象复制,需要为涉及的账号配置合适的访问权限。这里主要涉及源账号和目标账号。
源端的Bucket需要授权目标账号的 ram用户/角色 能够读取被复制的Object。通常做法是在源Bucket上添加一条Bucket Policy或RAM授权,允许目标账号对指定Object执行oss:GetObject操作。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": ["oss:GetObject"],
"Resource": ["acs:oss:*:*:source-bucket/*"],
"Principal": ["acs:ram::目标账号ID:root"]
}
]
}
说明:将 source-bucket 和 目标账号ID 替换成实际值。
目标账号需要有权限向目标Bucket进行写入(oss:PutObject),这个一般目标账号本身就具备。如果是委托其他RAM用户/角色来操作,还需确保其拥有对应写入权限。
oss:GetObjectoss:PutObject权限配置好这些权限后,就能顺利实现同区域跨账号对象复制了!🚀
参考文档:阿里云OSS 跨账号访问配置