删除桶-DeleteBucket
功能介绍
删除桶操作用于删除用户指定的桶。只有桶的所有者或者拥有桶的删桶policy权限的用户可以执行删除桶的操作,要删除的桶必须是空桶。如果桶中有对象或者有多段任务则认为桶不为空,可以使用列举桶内对象和列举出多段上传任务接口来确认桶是否为空。
注:
如果删除桶时,服务端返回5XX错误或超时,系统需要时间进行桶信息一致性处理,在此期间桶的信息会不准确,过一段时间再查看桶是否删除成功,查询到桶,需要再次发送删除桶消息。
授权信息
您必须是桶拥有者或拥有删除桶的权限,才能调用本接口,建议使用IAM或桶策略进行授权。了解更多OBS授权方式请参见OBS不同权限控制方式的区别。
- 如果使用IAM授权,那么请在“角色与策略授权”、“身份策略授权”两种IAM授权方式中选择一种,并配置相应权限:
- 如果使用角色与策略授权(旧版IAM,即IAM v3接口),需具备obs:bucket:DeleteBucket权限,授权操作请参见创建IAM自定义策略。
- 如果使用身份策略授权(新版IAM,即IAM v5接口),如下表所示,需具备obs:bucket:deleteBucket权限,授权操作请参见创建IAM自定义身份策略。
授权项
Action
访问级别
Access Level
资源类型(*为必须)
Resource Type (*: required)
Condition Key
Alias
依赖的授权项
Dependencies
obs:bucket:deleteBucket
Write
bucket *
-
-
-
- obs:EpochTime
- obs:SourceIp
- obs:TlsVersion
- obs:CustomDomain
-
- 如果使用桶策略进行授权,需具备obs:bucket:DeleteBucket权限,具体操作请参见自定义创建桶策略。
请求消息样式
1 2 3 4 |
DELETE / HTTP/1.1 Host: bucketname.obs.cn-north-4.myhuaweicloud.com Date: date Authorization: authorization |
请求消息参数
该请求消息中不使用消息参数。
请求消息头
该请求使用公共的请求消息头,具体请参见表3。
请求消息元素
该请求消息中不使用消息元素。
响应消息样式
1 2 |
HTTP/1.1 status_code Date: date |
响应消息头
该请求的响应消息使用公共消息头,具体请参考表1。
响应消息元素
该请求的响应消息中不带消息元素。
错误响应消息
无特殊错误,错误已经包含在表2中。
请求示例
1 2 3 4 5 6 |
DELETE / HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 02:31:25 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA= |
响应示例
1 2 3 4 5 |
HTTP/1.1 204 No Content Server: OBS x-obs-request-id: BF260000016435DE6D67C35F9B969C47 x-obs-id-2: 32AAAQAAEAABKAAQAAEAABAAAQAAEAABCTukraCnXLsb7lEw4ZKjzDWWhzXdgme3 Date: WED, 01 Jul 2015 02:31:25 GMT |
请求示例:删除的桶不存在
DELETE / HTTP/1.1 Authorization: OBS H4IPJX0TQTHTHEBQQCEC:iqSPeUBl66PwXDApxjRKk6hlcN4=User-Agent: curl/7.29.0 Host: examplebucket.obs.region.myhuaweicloud.com Date: WED, 01 Jul 2015 02:37:22 GMT Content-Type: application/xml;charset=UTF-8
响应示例:删除的桶不存在
x-obs-id-2: "32AAAQAAEAABAAAQAAEAABAAAQAAEAABCTBZPaontVN8iyR2NNEeTPRDdcmPVNFm
x-obs-request-id: "0000018A4E4567BD47CF110EE1B2A4DF
Server: OBS
Content-Length: 314
Date: WED, 01 Jul 2015 02:37:22 GMT
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Error>
<Code>NoSuchBucket</Code>
<Message>The specified bucket does not exist</Message>
<RequestId>0000018A4E4567BD47CF110EE1B2A4DF</RequestId>
<HostId>DRmhM6VfpWGBYYGrx6tpvbs8yoGi+uvlu5/20rpZ/Y2kTuq9mRuCXeA84734xs0+</HostId>
<BucketName>examplebucket</BucketName>
</Error>
请求示例:删除的桶非空
DELETE / HTTP/1.1 Authorization: OBS H4IPJX0TQTHTHEBQQCEC:iqSPeUBl66PwXDApxjRKk6hlcN4=User-Agent: curl/7.29.0 Host: examplebucket.obs.region.myhuaweicloud.com Date: WED, 01 Jul 2015 02:37:22 GMT Content-Type: application/xml;charset=UTF-8
响应示例:删除的桶非空
x-obs-id-2: "32AAAQAAEAABAAAQAAEAABAAAQAAEAABCTBZPaontVN8iyR2NNEeTPRDdcmPVNFm
x-obs-request-id: "0000018A4E4567BD47CF110EE1B2A4DF
Server: OBS
Content-Length: 314
Date: WED, 01 Jul 2015 02:37:22 GMT
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Error>
<Code>BucketNotEmpty</Code>
<Message>The bucket you tried to delete is not empty</Message>
<RequestId>0000018A4E4D04BBD304AD8E409873EC</RequestId>
<HostId>hME9234LDBKRFuuobDsmyUiP5Oq71oYo1vEL348QzfXHUoGs1RU1TgrOMUKTEMtA</HostId>
<BucketName>examplebucket</BucketName>
</Error>