复制后拒绝Amazon S3 Java SDK copyObject权限

时间:2018-08-09 08:02:01

标签: java amazon-web-services amazon-s3

我们正在使用带有JDK copyObject方法的Amazon S3将对象从一个存储桶复制到另一个存储桶。复制是自动的。 User1手动将文件上传到源存储桶,systemUser传输到目标存储桶。 User1是源存储桶和目标存储桶所有者。

s3.copyObject(sourceBucket, objectKey, destinationBucket, objectKey);

复制有效,但是复制后User1无法访问目标存储桶中的复制对象。拒绝访问。在目标存储桶中复制后,复制的对象所有者为systemUser。还尝试修改目标中复制对象的acl。

s3.setObjectAcl(destinationBucket, objectKey, acl);

这也使访问被拒绝。

我们如何复制对象,以便User1(复制到源存储桶并且是源存储桶和目标存储桶的所有者)可以访问目标存储桶中的文件?

1 个答案:

答案 0 :(得分:0)

由于保留政策的原因,我们在复制后无法编辑文件(和权限)。我们切换到CopyObjectRequest,它具有在复制之前指定ACL并将其作为复制操作的参数的选项。