配置受版本控制的对象权限 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

配置受版本控制的对象权限

Amazon S3 中的对象的权限在版本级别设置。每个版本都有自己的对象拥有者。创建对象版本的 Amazon Web Services 账户 是拥有者。因此,您可以为同一对象的不同版本设置不同的权限。要这样做,您必须指定要在 PUT Object versionId acl 请求中设置其权限的对象的版本 ID。有关详细描述和关于使用 ACL 的说明,请参阅 Amazon S3 的身份和访问管理

例 — 为对象版本设置权限

以下请求将被授权者(BucketOwner@amazon.com)对键(my-image.jpg)和版本 ID(3HL4kqtJvjVBH40Nrjfkd)的权限设置为 FULL_CONTROL

PUT /my-image.jpg?acl&versionId=3HL4kqtJvjVBH40Nrjfkd HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU= Content-Length: 124 <AccessControlPolicy> <Owner> <ID>75cc57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID> <DisplayName>mtd@amazon.com</DisplayName> </Owner> <AccessControlList> <Grant> <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser"> <ID>a9a7b886d6fd24a52fe8ca5bef65f89a64e0193f23000e241bf9b1c61be666e9</ID> <DisplayName>BucketOwner@amazon.com</DisplayName> </Grantee> <Permission>FULL_CONTROL</Permission> </Grant> </AccessControlList> </AccessControlPolicy>

同样地,要获取特定对象版本的权限,必须在 GET Object versionId acl 请求中指定它的版本 ID。您需要包含版本 ID,因为在默认情况下,GET Object acl 将返回对象的当前版本的权限。

例 — 检索用于指定对象版本的权限

在以下示例中,Amazon S3 将返回对于键(my-image.jpg)和版本 ID(DVBH40Nr8X8gUMLUo)的权限。

GET /my-image.jpg?versionId=DVBH40Nr8X8gUMLUo&acl HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU

有关更多信息,请参阅《Amazon Simple Storage Service API 参考》中的 GetObjectAcl