文档首页/ 对象存储服务 OBS/ API参考/ 桶API/ 桶配额/ 设置桶配额-SetBucketQuota
更新时间:2026-04-15 GMT+08:00
分享

设置桶配额-SetBucketQuota

功能介绍

默认情况下,OBS系统和单个桶都没有总数据容量和对象数量的限制。您可以通过为桶设置配额限制来控制桶内允许上传的对象总容量,超过设置的对象容量后,上传对象会失败(返回HTTP状态码403 Forbidden,错误码InsufficientStorageSpace)。此时如果想要继续上传对象,请扩大配额,或取消配额限制(设置为0),或删除不需要的对象。

桶配额只对设置生效后的对象上传操作有限制, 如果设置的桶配额数值小于已经上传的对象容量,不会删除已有对象,但后续不能再上传任何对象。这种情况下只有删除部分已有对象,将已用空间释放到配额限制以下之后才能再次上传新对象。

了解更多桶配额相关信息,请参见管理桶配额

接口约束

  • 桶配额值必须为非负整数,单位为字节,支持的最大值为263 - 1。
  • OBS没有提供删除桶配额的接口,您可以将桶配额设置为0来取消配额限制。
  • 由于桶配额的校验依赖于桶存量,而桶存量是系统后台计算,因此桶配额可能不会及时生效,存在滞后性。可能会出现桶存量超出配额或者删除数据后存量未能及时回落的情况,桶存量查询接口请参见获取桶存量

授权信息

您必须是桶拥有者或拥有设置桶配额的权限,才能调用本接口,建议使用IAM或桶策略进行授权。了解更多OBS授权方式请参见OBS不同权限控制方式的区别

  • 如果使用IAM授权,那么请在“角色与策略授权”、“身份策略授权”两种IAM授权方式中选择一种,并配置相应权限:
    • 如果使用角色与策略授权(旧版IAM,即IAM v3接口),需具备obs:bucket:PutBucketQuota权限,授权操作请参见创建IAM自定义策略
    • 如果使用身份策略授权(新版IAM,即IAM v5接口),如下表所示,需具备obs:bucket:putBucketQuota权限,授权操作请参见创建IAM自定义身份策略

      授权项

      Action

      访问级别

      Access Level

      资源类型(*为必须)

      Resource Type (*: required)

      条件键

      Condition Key

      别名

      Alias

      依赖的授权项

      Dependencies

      obs:bucket:putBucketQuota

      Write

      bucket *

      -

      -

      -

      • obs:EpochTime
      • obs:SourceIp
      • obs:TlsVersion
      • obs:CustomDomain
  • 如果使用桶策略进行授权,需具备obs:bucket:PutBucketQuota权限,具体操作请参见自定义创建桶策略

请求消息样式

以下为请求消息样例,请将示例中的BucketName修改为您的桶名,RegionID修改为桶所在的区域ID,可参考支持区域获取区域ID。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
PUT /?quota HTTP/1.1 
Host: BucketName.obs.RegionID.myhuaweicloud.com 
Date: GMT Date
Content-Length: BodyLength
Authorization: SignatureValue

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<Quota xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/"> 
    <StorageQuota>value</StorageQuota> 
</Quota>

URI参数(URI Parameters)

该请求在请求消息中没有带有参数。

请求头参数(Request headers)

该请求使用公共请求头,具体参见表3

请求体参数(Request body)

该操作需要请求体参数(Request body)来指定桶的空间配额,具体见表1

表1 请求体参数

元素名称

描述

是否必选

StorageQuota

指定桶空间配额值单位为字节。

类型:Integer

响应消息样式

1
2
3
HTTP/1.1 status_code
Date: date
Content-Length: length

响应头 (Response Headers)

该请求的响应消息使用公共响应头,具体请参考表1

响应体 (Response Body)

本接口的响应消息中不携带响应体。

错误响应消息

无特殊错误,所有错误已经包含在表2中。

请求示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
PUT /?quota HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.cn-north-4.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 03:24:37 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:k/rbwnYaqYf0Ae6F0M3OJQ0dmI8=
Content-Length: 106

<Quota xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">
  <StorageQuota>10240000</StorageQuota>
</Quota>

响应示例

1
2
3
4
5
6
7
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: BF260000016435E09A2BCA388688AA08
x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSHbmBecv7ohDSvqaRObpxzgzJ9+l8xT
Date: WED, 01 Jul 2015 03:24:37 GMT
Content-Length: 0

使用SDK调用接口

建议您使用OBS SDK调用接口。SDK对API进行了封装以简化您的开发工作,直接调用SDK接口函数即可访问OBS,无需手动计算签名。

相关文档

相关文档