

# 从已暂停版本控制的存储桶中删除对象
<a name="DeletingObjectsfromVersioningSuspendedBuckets"></a>

您可以将对象从暂停版本控制的存储桶中删除，以便删除具有空版本 ID 的对象。

如果某个存储桶的版本控制已暂停，`DELETE` 请求：
+ 可以仅删除其版本 ID 为 `null` 的对象。
+ 如果存储桶中没有对象的空版本，则不删除任何内容。
+ 将删除标记插入到存储桶。

如果暂停存储桶版本控制，该操作会移除具有空 `versionId` 的对象。如果版本 ID 存在，Amazon S3 会插入删除标记，该删除标记将成为对象的当前版本。下图显示了简单的 `DELETE` 移除空版本和 Amazon S3 改而使用 `null` 版本 ID 在其位置中插入删除标记的方式。

![\[图中显示了简单删除，用于移除版本 ID 为 NULL 的对象。\]](http://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/images/versioning_DELETE_versioningSuspended.png)


要永久删除具有 `versionId` 的对象，必须在请求中包含对象的 `versionId`。由于删除标记不包含任何内容，因此，您将在删除标记替换 `null` 版本时丢失该版本的内容。

下图显示不具有空版本的存储桶。在这种情况下，`DELETE` 不会移除任何内容。而是 Amazon S3 仅仅插入一个删除标记。

![\[图中显示了删除标记插入。\]](http://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/images/versioning_DELETE_versioningSuspendedNoNull.png)


即使是在已暂停版本控制的存储桶中，存储桶拥有者也可以通过在 `DELETE` 请求中包括版本 ID 来永久删除指定的版本，除非已明确拒绝 `DELETE` 请求的权限。例如，要拒绝删除具有版本 ID `null` 的任何对象，您必须明确拒绝 `s3:DeleteObject` 和 `s3:DeleteObjectVersions` 权限。

下图显示删除指定的对象版本将永久删除该版本的对象。只有存储桶拥有者可以删除指定的对象版本。

![\[图中显示了使用指定版本 ID 永久删除对象。\]](http://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/images/versioning_DELETE_versioningEnabled2.png)
