GB/T31916.2-2015

信息技术云数据存储和管理第2部分:基于对象的云存储应用接口

Informationtechnology—Clouddatastorageandmanagement—Part2:Object-basedcloudstorageapplicationinterface

本文分享国家标准信息技术云数据存储和管理第2部分:基于对象的云存储应用接口的全文阅读和高清PDF的下载,信息技术云数据存储和管理第2部分:基于对象的云存储应用接口的编号:GB/T31916.2-2015。信息技术云数据存储和管理第2部分:基于对象的云存储应用接口共有30页,发布于2016-05-01
  • 中国标准分类号(CCS)L79
  • 国际标准分类号(ICS)35.100.05
  • 实施日期2016-05-01
  • 文件格式PDF
  • 文本页数30页
  • 文件大小482.18KB

以图片形式预览信息技术云数据存储和管理第2部分:基于对象的云存储应用接口

信息技术云数据存储和管理第2部分:基于对象的云存储应用接口


国家标准 GB/T31916.2一2015 信息技术云数据存储和管理 第2部分:基于对象的云存储应用接口 Informationtechnology一Clouddatastorageandmanagemment Part2:Objeet-basedcloudstorageapplieationinterface 2015-09-11发布 2016-05-01实施 中毕人民共和国国家质量监督检验检疫总局 发布 中 国国家标准化管厘委员会国家标准
GB/T31916.2一2015 目 次 前言 范围 规范性引用文件 术语、定义和缩略语 3.1术语和定义 3.2缩略语 基于对象的云存储体系结构 基于对象的云存储应用接口通用要求 5.1概述 5.2访问控制 5.3补充出错信息 5.4公共请求头 5.5公共响应头 基于对象的云存储应用接口定义 6. 概述 6.2容器相关功能 6.3对象相关功能 附录A规范性附录基于ACL的访问控制 +* 附录B规范性附录补充出错信息
GB/T31916.2一2015 前 言 GB/T31916《信息技术云数据存储和管理》分为六个部分 -第1部分:总则 第2部分;基于对象的云存储应用接口 第3部分;分布式文件存储应用接口; 第4部分:基于块的云存储应用接口; 第5部分;基于键值(Key-Value)的云数据管理应用接口 第6部分;分布式关系数据库应用接口 本部分为GB/T31916的第2部分 本部分按照GB/T1.1一2009给出的规则起草 请注意本文件的某些内容可能涉及专利 本文件的发布机构不承担识别这些专利的责任 本部分由全国信息技术标准化技术委员会(SAC/TC28)提出并归口 本部分起草单位;移动通信有限公司研究院、东北大学软件学院、华为技术有限公司、上海计算 机软件技术开发中心,电子技术标准化研究院、浪潮(北京)电子信息产业有限公司、阿里云计算有 限公司、中兴通讯股份有限公司、华中科技大学 本部分主要起草人:孙少陵、李海波、杜宇健、宋杰、王洁萍,余祥、王妹,蔡立志、陈岭、颜秉璀、 李战园、刘晓辉、周可、胡捷、吴涛、张东田忠,秦习庆、王娟陈志峰、王卫国、丛培勇、杨丽蕴
GB/T31916.2一2015 信息技术云数据存储和管理 第2部分:基于对象的云存储应用接口 范围 GB/T31916的本部分给出了基于对象的云数据存储(以下简称云存储)体系结构,规定了基于对 象的云存储的应用接口通用要求和应用接口定义 本部分适用于基于对象的云存储的设计、开发和使用 规范性引用文件 下列文件对于本文件的应用是必不可少的 凡是注日期的引用文件,仅注日期的版本适用于本文 件 凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件 GB/T7408一2005数据元和交换格式信息交换 日期和时间表示法 (GB/T262312010信息技术开放系统互连OD的国家编号体系和注册规程 信息技术云数据存储和管理应用接口第1部分;总则 GB/T31916.12015 RFC822ARPA互联网文本消息格式标准(StandardfortheFormatofARPAInternetText Messages) RFC2616超文本传输协议(HTTP)1.1(HypertextTransferProtocolHTTP/1.1 术语、定义和缩略语 3.1术语和定义 GB/T31916.1一2015界定的以及下列术语和定义适用于本文件 3.1.1 容器container 基于对象的云存储中存储对象的逻辑空间 注:容器由容器名、容器标识和元数据组成 每个容器拥有一个全球唯一的容器标识 通过容器标识可唯一定位 到该容器 容器是对容器内对象总体进行统计和访问控制的人口点 3.1.2 配额 quota 为用户分配的系统资源最大使用量 3.2缩略语 下列缩略语适用于本文件 ACL访问控制列表(AccessControlList) HTTP超文本传输协议(HypertextTransferProtocol) MIME多功能因特网邮件扩充服务(MultipurposelInternetMailExtensions) OBS对象存储(Objeet-basedStorage) URI统一资源标识符(UniformResourceIdentifier
GB/T31916.2一2015 XML可扩展置标语言(ExtensibleMarkupLanguage) 基于对象的云存储体系结构 基于对象的云存储体系结构如图1所示 应用系统! .... 应用系统N HTTP接口 wEB服务 WEB服务 WEB服务 接口层 对象操作 容器操作 身份认证 用户 对款 容器 服务层 相关 相关 相关 功能 功能 功能 访问控制 权限设置 权展设置 可扩展存储系统 存储层 图1基于对象的云存储体系结构 基于对象的云存储由接口层、服务层和存储层构成 接口层通过wEB服务为应用系统提供基于 HTTP协议的对象存储服务 服务层实现对象、容器及用户的相关功能 用户的实际数据保存在对象 中,容器为对象的逻辑存储空间 每个对象应属于一个容器 对象和容器之间的关系如图2所示 对象1 ***. 对象n HHTTP接口 对象2 用户 容器 基于对象的云存储 图2对象和容器之间的关系 用户相关功能包括用户身份认证管理和访问控制 通过用户身份认证管理保证只有合法用户才能访 问基于对象的云存储 完成用户身份安全管理后,通过访问控制进行用户状态、配额和操作权限的管理 存储层为服务层提供基础的存储空间 存储层应采用可扩展的存储架构,具体存储技术应对外部 应用透明 基于对象的云存储应用接口通用要求 5.1概述 基于对象的云存储应用接口通用要求包括接口协议、身份认证管理,访问控制状态码信息描述、补 充出错信息、公共请求头、公共响应头和出错信息描述要求8项内容 其中,接口协议,身份认证管理、
GB/T31916.2一2015 状态码信息描述和出错信息描述要求4项内容应符合GB/T31916.12015中第5章规定 5.2访问控制 基于对象的云存储应提供访问控制机制,可通过ACI等方式进行访问控制管理 基于ACI的访问控制见附录A 5.3补充出错信息 基于对象的云存储发生的出错响应较为复杂,需要对HTTP状态码补充出错信息描述 补充出错 信息格式符合GB/T31916.1一2015中5.4的要求 补充出错信息描述见附录B 5.4公共请求头 基于对象的云存储应用接口的时间格式按GB/T74082005规定的格式 HTTP请求头格式描述见表1(见RFC2616) 表1公共请求头 选择状态 名称 描述 Host 主机信息,如;obs.,china.com 必选 对于有内容的请求,如UT操作 Content-Length 请求消息内容长度(不含消息头 本参数为必选;无内容的请求,如 DELETE操作,本参数为可选 Conent-Type 表示文档MIME类型 可选 消息发送的时间,时间的描述格式由RFC822定义,如;Sun 必选 Date 18Nov200606;12;00GMT 授权信息,包含鉴权方信息,由用户 AccesslD和Signature信 Authorizationm 息组成,如:Authorization "OBS" AccessID 必选 Signature 用户设置的请求发起时间,如果该扩展项被设置系统则忽 x-OBS-date 可选 略Date头域的时间,并且签名计算时Date头域使用空串 5.5公共响应头 基于对象的云存储应用接口的HTTP公共响应头格式描述见表2 表2公共响应头 选择状态 名称 描述 对于有内容的响应,本参数为必选;对 Content-Length 响应消息内容长度(不含消息头) 于无内容的响应,本参数为可选 Content-Type 可选 表示响应文档属于什么MIME类型 消息响应的时间,时间的描述格式由RFC822定义,如 Date 必选 sun,18Nov200606;12;00GMT Server 处理请求的原始服务器的信息 可选
GB/T31916.2一2015 基于对象的云存储应用接口定义 6.1概述 基于对象的云存储应用接口包括容器相关功能和对象相关功能 容器相关功能应包括: a)创建容器" b) 删除容器; 获取用户所有容器 c) 获取容器中对象列表 当采用ACL方式进行用户访问控制时,容器相关功能还应包括 获取容器权限 设置容器权限. 对象相关功能应包括 创建对象 a 删除对象; b 获取对象 获取对象属性; 设置对象属性 当采用ACL.方式进行用户访问控制时,对象相关功能还应包括 fD 获取对象权限; 设置对象权限 g 容器相关功能 6.2.1创建容器 6.2.1.1功能描述 用户创建 一个容器标识符全局唯一的空容器 容器标识符宜采用UR方式,也可采用 GB/T262312010规定的OID方式 6.2.1.2请求消息头 PUT/ContainerNameHTTP/1.l 6.2.1.3请求参数 无 6.2.1.4消息头附加域 消息头附加域应包含信息见表3 表3消息头附加域信息 名称 类型 选择状态 描述 x-OBSacl 字符串 访问权限 可选
GB/T31916.2一2015 6.2.1.5请求体参数 请求体参数应包含信息见表4 表4请求体参数信息 名称 类型 描述 选择状态 ContainerConfigura" 包含所创建容器的配置信息; 标签 可选 父标答E tion 所创建容器的位置信息; Iocaionnformation 字符串 可选 父标签.ContainerConfguration 6.2.1.6响应消息代码 如果创建容器成功,返回状态码201;如果失败,根据原因设置状态码和附加出错信息 6.2.1.7响应参数 无 6.2.1.8响应消息体参数 无 6.2.1.9消息示例 请求消息见示例1. 示例1: PUT/MyPictureContainerHTTP/1.1 Host:obs,china.com Content-l.ength:0 Date:Sun,6Feb201118:10;00GMT Authorization:OBSJKLkD346SDFGH958606C;cKJGHbghad5869HDF十xQE0diMbL ContainerConfiguration l.ocationlnformation Regio03《n 八I.ocationlnforation 7ContainerConfiguration 响应消息见示例2. 示例2. HrTPA1.1 201Created Date:Sun,6Feb201l18;10;00GMT Content-l.ength:0 Server:ObsServer 6.2.2 删除容器 6.2.2.1功能描述 用户删除一个空的容器 如果容器中存在对象,则删除失败 6.2.2.2请求消息头 DELETE/ContainerNameHTTP/1.1
GB/T31916.2一2015 6.2.2.3请求参数 无 6.2.2.4消息头附加域 无 6.2.2.5请求体参数 无 6.2.2.6响应消息代码 状态码根据定义返回,成功为204;如果失败,根据原因设置状态码和附加出错信息 6.2.2.7响应参数 无 6.2.2.8响应消息体参数 无 6.2.2.9消息示例 请求消息见示例 示例1 DELETE/MyPictureContainerHT'TP/1.l Host:obs.china.com Date:Sun,6Feb201118;10;00GMT oBs1F177624EXAMP42oD5D3.bLRepd3YB+FERepdl3YB+IERep Authorization 响应消息见示例2 示例2. HTTP/1.1204NoContent Date:Wed,01Mar200912;00:00GMT Server:ObsServer 6.2.3获取用户所有容器 6.2.3.1功能描述 用户获取自己账户下的容器列表,包括每个容器的相关信息 6.2.3.2请求消息头 GET/HTTP/1.1 6.2.3.3请求参数 无 6.2.3.4消息头附加域 无
GB/T31916.2一2015 6.2.3.5请求体参数 无 6.2.3.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.2.3.7响应参数 无 6.2.3.8响应消息体参数 响应消息体参数应包含信息见表5 表5响应消息体参数信息 类型 名称 描述 选择状态 包含所获取的全部容器信息 ContainerList 标签 必选 父标签;无 包含所获取容器的拥有者信息; Owner 标签 必选 父标签;,Coane.s 包含所获取容器的拥有者ID信息 字符串 必选 父标签.contineisowne 包含所有获取的容器信息; 标签 必选 Containers 父标签;Comainerl.st 包含获取的一个容器信息; Container 标签 必选 父标签,cotinescosaines -个容器名信息; CContainerNanme 字符串 必选 父标签Cosnreliscotinesrs\cntsiner 容器创建时间 字符电 CreationDate 父标签.Containerl.ist\Ccontainers\container 必选 描述格式由RFC822定义,如:Sun,18Nov200606:12:00GMT 6.2.3.9消息示例 请求消息见示例1. 示例1: GET/HTTP1.1 Host:obs.,china,com Date:Sun,6Feb201118;10;00GMT Auhoiaion,oBs15tUYRRrys7oU4D8:46;EErYthalkctft87=kdiMbL.Repd 消息响应见示例2. 示例2: HTTP/1.1200OK GMT 自Fb1l810.00 IDateSun,6T Content-l.ength:322
GB/T31916.2一2015 ServerObsServer Containerlist 《Owner MyDoeumentFolder(/ContainerName》 CreationDate)sun,6Feb2011 GMT(CreationDate 02;30;00 ontainer OnalOCS Containerlist 获取容器中对象列表 6.2.4.1功能描述 用户获取容器中所有对象的列表,并可通过输人参数对结果集合进行筛选 此操作每次返回以字 典序排序的指定数量的对象结果集,指定数量的上限由服务提供商确定 用户应对容器有读访问权限, 否则无法获取结果 6.2.4.2请求消息头 GET/ContainerName?prefix=prefix&.maxResults=maxResults&.marker=markerHTTP/1.1 6.2.4.3请求参数 请求参数应包含信息见表6 表6请求参数信息 名称 类型 描述 选择状态 Preix 字符串 此参数规定了返回结果集中对象URI的前缀 可选 此参数规定了返回结果集的对象数量上限 如果满足参数的结果 maxResults 整数 集对象数量超过maxResults值,超出的部分将会被截断,同时在返 可选 因体中设置T. Iruneated>true<(/Truncated》标签 此参数指定了对象URI 的起始值(marker类似一个基于字符串类 型的游标) 由于受到了maxResults的限制,对于不能一次返回所 Marker 字符电 有符合查询条件的请求,客户端可以通过设置" marker 为上次调用 可选 请求的最后一个对象D值,使得该次调用请求从上次调用请求的 最后一个对象ID值的下一个位置进行继传 6.2.4.4消息头附加域 无
GB/T31916.2一2015 6.2.4.5请求体参数 无 6.2.4.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.2.4.7响应参数 无 6.2.4.8响应消息体参数 响应消息体参数应包含信息见表7 表7响应消息体参数信息 名称 类型 描述 选择状态 获取容器中对象列表; ListObjeetsResult 标签 必选 父标签:无 容器URI 字符串 ContainerName 可选 父标签,LsobietRele 对象URI前缀; 字符串 Prefix 可选 父标签:ListObjectsResult 结果集对象数量上限 MaxResults 字符串 可选 父标签:ListObjectsResult 对象URI的起始值; Marker 字符串 可选 父标签;LisObjetsResule 返回结果是否是所有结果; 字符串 可选 IsTruncated 父标签;ListObjectsResult 结果集对象列表; ObjectList 标签 必选 父标签:ListObjectsResult 结果集中的对象; ObjeetUnit 标签 必选 父标签:lList(ObjectsResult\(ObjectList 对象名称; ObjectURI 字符串 必选 父标签;LisObjetsReswl\ObjyeetList\objetUnit 结果集中的对象的系统属性 标签 必选 SvstemMetadata 父标签;ListObjectsResult\ObjectList\ObjeetUnit 对象创建时间 字符串 必选 Ctime 父标签:ListObjectsResult\ObjectList\ObjectUnit\SystemMetadata 对象大小; Size 字符串 必选 父标签;LisOyjectsReul\ObjeeLie\obyeetUnmitl\systemMetadatan
GB/T31916.2一2015 6.2.4.9消息示例 请求消息见示例1 示例1. GET/MyPieture?prefix=eoud&.maxResults=50HTTP/1.1 Host:obs.,china,comm Date:wed,25Nov200912;00:00GMT Authorization:OBsKHGF568HJG254LUTRE65;kjgogbas=ao9872bgvsfoijGHT 消息响应见示例2. 示例2 HTTP/1.1200(OK GMT Date;wed,01Mar200912:00:00. Content-l.ength:236 server;ObsServer ListObjectsResult ContainerName》MyPieture《/ContainerName Prefix)cloud/Prefix MaxResults)50Sun,18Nov20o606,12;00GMT/Cimne) Size>1024(/Sizey SystemMetadata /objetUnin) /ObjectList) /ListObjectsResult 6.2.5获取容器权限 6.2.5.1功能描述 当采用ACL方式(见附录A)进行访问控制时,用户利用本接口获取容器的ACL 用户应对容器 有READ_ACP访问权限,否则不能获取结果 操作目标由“/ContainerName'?acl”组成的URI表示, 其中,“ContainerName"为容器名称,“acl”指明本操作目标为访问控制列表 6.2.5.2请求消息头 GETContainerName?aclHTTP/1.1 6.2.5.3请求参数 无 6.2.5.4消息头附加域 无 l0
GB/T31916.2一2015 6.2.5.5请求体参数 无 6.2.5.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.2.5.7响应参数 无 6.2.5.8响应消息体参数 响应消息体参数应包含信息见表8 表8响应消息体参数信息 名称 类型 描述 选择状态 包含容器的访问授权信息和拥有者信息; 标签 必选 AccessControlPolicy 父标签;无 包含容器的访问授权信息; 标签 必选 AccessControlIist 父标签:AccessControlIPoliey 包含容器的拥有者信息 标签 必选 (O)wner 父标签:AccessControlIPoliey 包含容器的拥有者lID信息; UserlD 字符串 必选 标签:AccessControlPoliey. .Owner 包含容器的一次授权信息; 标签 必选 Grant 父标签 ccessControlPoliey.AccessControlList 被授权用户信息; 标签 必选 GranteelD 父标签;AccessControlPolieyAccessControlList\Grant 包含 个被授权用户ID信息 字符串 必选 父标签;AccessControlPoliey\AccessControlList\Grant\GranteelD 包含一个被授权用户被授予的权限信息,内容见附录A 字符电 必选 Permission 父标签:AccessControlIPolieyAccessControlList\Grant 6.2.5.9消息示例 请求消息见示例 示例1: GET /MyP'etureContainer?”aclHTTP/1. Host:obs.china.com Date:Sun,6Feb201118:10:00GMT Authorization;oBsKHGF568HJG251 LUTREs5,kbieottaes十一ao873hesoGHr 消息响应见示例2 示例21 HTTP/1.1200OK 1
GB/T31916.2一2015 Date:Sun,6Feb201118;10;00GMT Contentl.ength:236 ServerObsServer AccessControlPoliey Owner UserID)John(/UserlD) /Owner 《AccessControlList Grant GranteeIDy ID)Frank(/ID /GranteelID) GB/T31916.2一2015 表9请求体参数信息 选择状态 名称 类型 描述 包含容器的访问授权信息和拥有者信息; 标签 必选 AccessControlPolicy 父标签:无 包含容器的访问授权信息; 标签 AccessControlList 必选 父标签:AccessControlPoliey 包含容器的拥有者信息; Owner 标签 必选 父标签:AccessControlPoliey 包含容器的拥有者D信息; UserlD 字符电 必选 父标签;AccessControlPoliey\(Owner 包含容器的一次授权信息; 标签 必选 Grant 父标签;AccessControlPoliey叭AecessControlList 包含一个被授权用户信息; 标签 必选 GranteelD 父标签;AccessControlPolicy\AccessControlList\Grant 包含一个被授权用户ID信息 字符串 必选 父标签:AccessControlPoliey叭AccessControlList\Grant\GranteelD 包含一个被授权用户被授予的权限信息,内容见附录A 字符串 Permission 必选 父标签;AccessControlPoliey叭AccessControlList\Grant 6.2.6.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.2.6.7响应参数 无 6.2.6.8响应消息体参数 无 6.2.6.9消息示例 请求消息见示例1 示例1. PUT/MyPietureContainer?aclHT'TP/1.l Host:obs.china.com Content-length:124 Date:Wed,25Nov200912;00;00GMT \uthorization:oBsUTR4D3461F1776242oD5;MbLRepd3YB十0diMbLReMPLE=B+F AccessControlPoliey Owner UserlD)John(/UserlD /O)wner AccessControlList (Grant 13
GB/T31916.2一2015 GranteelD ID)Frank(/ID)y /GranteeIDy FULL_coNTROL.GB/T31916.2一2015 表10(续 选择状态 名称 类型 描述 x-OBSusermeta-" 字符串 用户自定义属性 可选 6.3.1.5请求体参数 无 6.3.1.6响应消息代码 状态码根据定义返回,成功为201;如果失败,根据原因设置状态码和补充出错信息 6.3.1.7响应参数 无 6.3.1.8响应消息体参数 无 6.3.1.9消息示例 请求消息见示例1. 示例1 PUT/myContainer/mylmage.jpgHTTP/1.l Host;obs.china.com Date:wed,12Oct200917;50:00GMT Authorization:oBs15B4D3461F177 nB12sA.xobpaNMLRpu6B十HExAwE- Content-Type:text/plainm Content-length:11434 [11434bytesofobjectdata 响应消息见示例2 示例2 HTTP/1.1201Created Date:Wed,12Oct200917;50;00(GMT Content-Type;text/plain Content-l.ength:0 Server:ObsServer 6.3.2删除对象 6.3.2.1功能描述 用户删除指定的UR1的对象,用户删除对象前应注册并通过合法的身份鉴别,并对该对象所在的 容器具有写权限 6.3.2.2请求消息头 DELETEobjectURIHTTP/1.1 15
GB/T31916.2一2015 6.3.2.3请求参数 无 6.3.2.4消息头附加域 无 6.3.2.5请求体参数 无 6.3.2.6响应消息代码 状态码根据定义返回,成功为204;如果失败根据原因设置状态码和补充出错信息 6.3.2.7响应参数 无 6.3.2.8响应消息体参数 无 6.3.2.9消息示例 请求消息见示例1. 示例1 DELETE/myContainer/mylmage.jpgHTTP/1. Host:obs.china.com Date:wed,12Oct200917;50;00GMT Authorization:OBS15BAD3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE-一 Content-Type:text/plain Content-l.ength:0 响应消息见示例2 示例2 HTTP/1.1204NoContent Date:Wed,12Oet200917:50;00GMT Content-Type:text/plain Content-l.ength:0 ServerObsServer 6.3.3获取对象 6.3.3.1功能描述 根据指定的URI读取一个对象的数据,用户创建对象前应注册并通过合法的身份鉴别,并对该对 象具有读权限 6.3.3.2请求消息头 GETobjeetURHTTP/1. l6
GB/T31916.2一2015 6.3.3.3请求参数 无 6.3.3.4消息头附加域 消息头附加域应包含信息见表11 表11消息头附加域信息 名称 类型 描述 选择状态 字符串 读取对象数据的字节范围 可选 Range 6.3.3.5请求体参数 无 6.3.3.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.3.3.7响应参数 无 6.3.3.8响应消息体参数 无 6.3.3.9消息示例 请求消息见示例1 1 示例 GET/myContainer/mylmage.jpgHTTP/1.1 Host;obs.china,com Wed,12Oet2009 17,50.,o0GMm Date: Authorization:OBs15BID3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE= Content-Type:text/plainm 响应消息见示例2 示例2. HTTP/1.1200(OK Date:wed,12Oct200917:50;00GMT Content t-Type text/plain Content-length:1024 Server:ObServer [1024bytesofobjeetdata] 6.3.4获取对象属性 6.3.4.1功能描述 根据指定的URI读取某个对象的属性值 用户应通过合法的身份鉴别,并对该对象具有读权限 17
GB/T31916.2一2015 6.3.4.2请求消息头 方法一;使用GET方法,响应消息通过消息体返回结果 GETobjectURI?metaHTTP/1.1 方法二;使用HEAD方法,响应消息通过消息头返回结果 HEADobjeectURIHTTP/1.1 6.3.4.3请求参数 无 6.3.4.4消息头附加域 无 6.3.4.5请求体参数 无 6.3.4.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.3.4.7响应头参数 响应头参数应包含信息见表12 表12响应头参数信息 类型 选择状态 名称 描述 Owner 字符串 Owner属性 必选 Ctime 字符串 创建时间属性 必选 字符串 用户自定义属性 可选 xobs-usermeta 6.3.4.8响应消息体参数 无 6.3.4.9消息示例 6.3.4.9.1方法一 请求消息见示例1. 示例1: y(Object?metaHTTP/1.1 GET/myComtainer/myt Host:obs.china.,.com Date:wed,12Oct200917;50;00GMT Authorization:OBS15BAD3461F177624206A;xQEOdiMDLRepdf3YB+FIEXAMPLE=- 响应消息见示例2 示例2. HTTP/1.1200OK 18
GB/T31916.2一2015 Date:wed,12Oct200917;50;00GMT Content-L.ength:291 owner;china ctime;Sun,18Nov200606;l2;00GMT x-obs-usermeta-metakeyl;metaValuel xobs-usermeta-metakey2:metavalue2 Server;ObsServer 6.3.4.9.2方法二 请求消息见示例1 示例1 HEAD/myContainer/my(ObjectHTTP/1.1 Host:obs.,china,comm Date:wed,12Oct200917:50:00GMT oBs15BD8461F177824206.A;xQEoadML.Repdl3YB+FHExAMPLE- Authorization: 响应消息见示例2. 示例2 HTTP/1.1200OK Date:wed,12Oet200917:50;00GMT 291 Content-length; Server;ObsServer owner;china ctime:Sun,l8Nov200606:l2:00GMT -obs-usermeta-metakeyl;metavaluel x-obs-usermeta-metakey2:metavalue2 6.3.5设置对象属性 6.3.5.1功能描述 根据指定的URI设置该对象的用户自定义属性值,用户创建对象前应注册并通过合法的身份鉴 别,并对该对象的容器具有写权限 6.3.5.2请求消息头 PUTobjectURI?metaHTTP/1.1 6.3.5.3请求参数 无 6.3.5.4消息头附加域 消息头附加域应包含信息见表13 表13消息头附加域信息 名称 类型 描述 选择状态 字符串 用户自定义属性 可选 x-obs-usermeta-* 19
GB/T31916.2一2015 6.3.5.5请求体参数 无 6.3.5.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.3.5.7响应参数 无 6.3.5.8响应消息体参数 无 6.3.5.9消息示例 请求消息见示例1 示例1: PUT/myBucket/mylmage.jpg?nmetaHTTP/1. Host:obs.ehina.com Date:wed,12Oet200917;50:00GMT Athorization;os15B4D3461F177621206A;xQEdiMbLRepdl3YB+FIExAMPLE- X-obs-usermeta-metakeyl;metavaluel xobs-usermeta-metakey2:metavaue2 Content-l.ength:0 响应消息见示例2 示例2: HTTP/A.1200oK Date:wed,12Oet20091750;00GMT Content-l.ength:0 ServerObsServer 6.3.6获取对象权限 6.3.6.1功能描述 当采用ACL方式(见附录A)进行访问控制时,用户利用本接口获取对象ACL的操作,返回信息应 包含指定对象的权限控制列表信息 用户应拥有对指定对象READ_ACP的权限 6.3.6.2请求消息头 /ObjeetName?aclHTTP/1.l GET/ContainertN Name/ 6.3.6.3请求参数 无 6.3.6.4消息头附加域 无 20
GB/T31916.2一2015 6.3.6.5请求体参数 无 6.3.6.6响应消息代码 状态码根据定义返回,成功为200;如果失败,根据原因设置状态码和补充出错信息 6.3.6.7响应参数 无 6.3.6.8响应消息体参数 响应消息体参数包含信息见表14 表14响应消息体参数信息 名称 类型 描述 选择状态 包含容器的访问授权信息; 标签 必选 AccessControlist 父标签;AccessControlPoliey 包含容器的访问授权信息和拥有者信息; 标签 必选 AccessControlPolicy 父标签;无 包含容器的拥有者信息; 标签 必选 (O)wner 父标签:AccessControlIPoliey 包含容器的拥有者D信息; UserlD 字符串 必选 父标签;AccessControlPoliey\Owner 包含容器的一次授权信息; 标签 必选 Grant 父标签;AccessControlPoliey叭AccessControlList 被授权用户信息; 标签 必选 GranteelD 父标签;AccessControlPolieyAccessControlList\Grant 个被授权用户D信息 包含 字符串 必选 父标签;AccessControlPoliey\AccessControlList\Grant\GranteelD 包含一个被授权用户被授予的权限信息; 字符电 必选 Permission 父标签:AccessControlIPolieyAccessControlList\Grant 6.3.6.9消息示例 请求消息见示例 示例1 GET /MyContainer/MyPiceture?acHTTP1 /1,1 Host:obs.china.com Date:Sun,6Feb201118:l10;00GMT L.s Authoriaation;oBsTIKVI979BgZHT9826KIPlkgsdrili87vkinBo8dv sO6Ak 响应消息见示例2 示例21 HTTP/1.1200OK 21
GB/T31916.2一2015 Date:wed,28Oct200922;32;00GMT Content-length:124 Content-Type:applieation/xml Server:ObsServer xmlversion="1.0”encoding="UTF-8"?》 AccessControlPolicy (O)wner UserlD>John(/UserlD 《7/Owner GB/T31916.2一2015 表15(续 选择状态 名称 类型 描述 包含容器的拥有者信息; 标签 必选 (Owner 父标签;AccessControlPoliey 包含容器的拥有者D信息; 字符串 UserlD 必选 父标签:AccessControlPoliey\Owner 包含容器的一次授权信息 Grant 标签 必选 父标签:AccessControlPolieyAccessControlList 包含一个被授权用户信息; 标签 必选 GranteelD 父标签:AccessControlPolicey\AccessControlList\Grant 包含一个被授权用户ID信息; 字符串 必选 父标签;AccessContro trolPoliey叭\AccessControlList\Grant\GranteelD 包含一个被授权用户被授予的权限信息; 字符串 必选 Permission 父标签;AccessControlPoliey叭AccessControlList\Grant 6.3.7.6 响应消息代码 状态码根据定义返回,成功为200;如果失败根据原因设置状态码和补充出错信息 6.3.7.7响应参数 无 6.3.7.8响应消息体参数 无 6.3.7.9消息示例 请求消息见示例1 示例1: PUT/MsyContainer/ r/MyPe lHTTP/1. icture?ac Host:obs,china.com GMT Date:Sun,6Feb201118;10;00 Authorization:O)BSTIKVJ979BgZHT9826KJP:lkgsdril87vkjn9o8dvL9Ss(O6Ak Type:applieation/xml Oe "1.0”encoding="UTF-8"? xmlversion AccessControlPolicy Owner UserlID)John(/UserlD) /O)wner GB/T31916.2一2015 FULL_cONTRoLGB/T31916.2一2015 附录A 规范性附录 基于AcL的访问控制 基于对象的云存储可通过ACL进行访问控制 其中,ACL的定义见表A.1 表A.1ACL定义 ACL值 容器级访问控制功能 对象级访问控制功能 允许读取对象数据和元数据,但不包括对象的 允许对容器执行列出对象的操作 READ 访问控制权限 允许创建、覆盖、删除该容器中的对象和对 WRITE 不支持 象元数据 允许读取容器和对象的访问控制权限,仅限于容器和对象的拥有者有该权限,缺省情况下隐 READ_ACP 含该权限 允许设置容器和对象的访问控制权限,仅限于容器和对象的拥有者有该权限,缺省情况下隐 WRITE_ACP 含该权限 FULLcONTROL 允许非拥有者用户拥有READ.,wRITE权限,拥有者拥有全部权限 系统在执行对象或容器的PUT操作时,可通过使用扩展头“xOBSacl”的方式,同步设置对象或容 器的访问控制列表 常见ACL宏定义见表A.2 表A.2常见AcL宏定义 访问控制模式宏 措述 Default 拥有者具有FULl_coNTRoL的权限,容器或对象创建时,缺省权限为defalt 拥有者具有FULICONTROL.权限,匿名用户拥有READ权限 anonymous-read anonymous-readwrite 拥有者具有FULLCONTROL权限,匿名用户拥有READ|WRITE权限 拥有者具有FULL.coNTRo1权限,任意注册用户拥有READ权限 obs-user-read 拥有者具有FULLcONTRoL权限,任意注册用户拥有READlwRITE权限 obs-userreadwrite 对于容器操作,等同于dea模式; 对于对象操作;对象拥有者具有FUL._coNTRoL.权限,对象所在容器的拥有 containerowner-read 者,拥有READ权限 对于容器操作等同于defal模式 对于对象操作;对象拥有者具有FULL._coNTROL权限,对象所在容器的拥有 container-owner-fullcontrol 者,拥有FULLCONTROL权限 系统包含以下两类特殊用户标识,普通用户不能使用 a)OBsOBSALL-REG1STEDUSERs;所有已注册的OBS对象存储业务用户 OBs-OBs-ANONYMoUs-USERS,匿名用户 b 25
GB/T31916.2一2015 附 录B 规范性附录 补充出错信息 基于对象的云存储对HTTP状态码的补充出错信息描述见表B.1 其中“出错名称”对应于 GB/T31916.12015中5.4中的Name字段,“出错信息”对应于GB/T31916.1一2015中5.4中的 Message字段 表B.1补充出错信息描述 状态码 出错名称 出错信息 Bad-Content-MD5 Http消息头中的Content-MD5和系统收到的消息内容不匹配 Too-Large-Objeet 上传对象大小超出范围 Request-Timeout 执行任务超时 内容实际长度和消息头的contentLength值不匹配 Content-length-Mismatch 无效的参数 lnvalid-Argument 无效的对象集 Invalid-Container nvalidURI 用户提供的UR1错误 Too-l.ong-Key 400 标识符超长 MalformedXM XML格式错误 To0-Large-Metadata 元数据大小超出范围 用户权限数据大小超出范围 Too-large-Acl 请求消息缺少授权信息 Missing-Authorization 创建对象集数目超出限制 Too-Many-Container Account-Problenm 账户问题,需要联系服务提供方 Account-Disabled 账户停服 Container-Disabled 容器被挂起 lnvalid-Accessld 请求使用的AccessID不存在 系统计算的签名和请求中附带的签名不匹配 Signature-Mismatch 执行操作时权限不够 Aceess-Deniedl 403 请求发起的时间和系统时间偏差太大 Request-TimeToo-Skewed Insufficientcapaceity 用户配额空间不够 NoSuch-Container 请求的对象集不存在 NoSuch-Key 对象标识符不存在 NotExist-Metadata 元数据不存在 04 对象集名称已被占用,需要选择另外的名称 Container-AIready-Exist 用户创建一个已经属于自己的容器 Container-Already-Owned-By-You 26
GB/T31916.2一2015 表B.1(续 出错名称 状态码 出错信息 Container-Not-Empty 被删除的对象集非空 409 资源冲突,操作取消 Operation-Aborted

GB/T31916.2-2015:基于对象的云存储应用接口

随着互联网技术的不断发展,大量数字化的数据被持续地产生、累积,并需要进行有效的存储和管理。在这种需求下,云数据存储得到了广泛的应用和发展。而GB/T31916.2-2015就是针对云数据存储及相关技术的一个标准,其中包括了基于对象的云存储应用接口。

什么是对象存储?

对象存储是一种数据存储架构,适合于大规模的非结构化数据。相比传统的文件系统存储方式,对象存储更加灵活、可扩展,能够支持海量数据的存储和管理。对象存储将数据组织成对象,每个对象都有唯一的标识符,对象之间并无层级关系。

GB/T31916.2-2015标准下的基于对象的云存储应用接口

GB/T31916.2-2015是一份针对云存储及相关技术的国家标准。其中第二部分(GB/T31916.2-2015)介绍了基于对象的云存储应用接口。

基于对象的云存储应用接口,可以使开发人员更加方便地使用云存储服务,实现数据的上传、下载和管理等操作。在这一标准中,定义了一系列基于HTTP协议的RESTful API接口,支持多种编程语言,并且提供了可靠性、安全性等方面的保障。

基于对象的云存储应用接口的优势

基于对象的云存储应用接口相比其他接口有以下优势:

  • 易于使用:基于HTTP协议的RESTful API接口非常易于使用,开发人员只需要按照文档要求传递参数即可。
  • 高可扩展性:对象存储架构本身就具有高可扩展性,而基于对象的云存储应用接口可以进一步提升其可扩展性。
  • 高可用性:基于对象的云存储应用接口提供了多种安全性、可靠性方面的保障,确保数据的安全和可靠。

结论

GB/T31916.2-2015标准下的基于对象的云存储应用接口是一种非常实用的技术,能够帮助企业更好地管理海量的非结构化数据。通过使用这种接口,开发人员可以更加便捷地实现数据的上传、下载和管理等操作,并且享受到相应的可靠性、安全性方面的保障。

信息技术云数据存储和管理第1部分:总则
上一篇 本文分享国家标准信息技术云数据存储和管理第1部分:总则的全文阅读和高清PDF的下载,信息技术云数据存储和管理第1部分:总则的编号:GB/T31916.1-2015。信息技术云数据存储和管理第1部分:总则共有7页,发布于2016-05-01
信息技术云数据存储和管理第5部分:基于键值(Key-Value)的云数据管理应用接口
本文分享国家标准信息技术云数据存储和管理第5部分:基于键值(Key-Value)的云数据管理应用接口的全文阅读和高清PDF的下载,信息技术云数据存储和管理第5部分:基于键值(Key-Value)的云数据管理应用接口的编号:GB/T31916.5-2015。信息技术云数据存储和管理第5部分:基于键值(Key-Value)的云数据管理应用接口共有27页,发布于2016-05-01 下一篇
相关推荐