Object(对象)
对象存储中存储数据的最小单位,每个文件对应一个 Object。Object 名使用 UTF-8 编码。每个 Object 由数据和元数据组成。数据对应于存储的文件内容。元数据对应于文件的属性,包括Last Modified Time、Content-Type 以及自定义属性键值对等。对象大小最多可为 10 TB。
Bucket(空间)
对象存储中 Object 的组织管理单位,每个 Object 都存储在一个 Bucket 中。Bucket 名不能修改。每个用户默认最多创建3个 Bucket。Bucket 名不能重复。可以对 Bucket 进行权限控制。Bucket 内的 Object 个数及总空间大小没有限制。命名规范:
Region(地域)
Region 表示对象存储的数据中心所在的地域,物理位置。用户可以根据费用、请求来源等综合选择数据存储的 Region。一般来说,距离用户更近的 Region 访问速度更。目前只支持 us-east 地域,一旦指定之后就不允许更改,该 Bucket 下所有的 Object 都存储在对应的数据中心,目前不支持 Object 级别的 Region 设置。
Endpoint(访问域名)
Endpoint 表示对象存储对外服务的访问域名。对象存储以 HTTP RESTful API 的形式对外提供服务,当访问不同的 Region 的时候,需要不同的域名。例如美国东部1区的外网 Endpoint 是 s3.us-east-1.ossfiles.com
Access Key 和 Access Secret
棱束链为每位用户分配一个 Access Key 和 Access Secret,该密钥将在用户向对象存储发起请求时用作签名验证。Access Key 用于标示用户,Access Secret 是用户用于加密签名字符串和 对象存储 服务用来验证签名字符串的密钥。用户在注册之后,可以通过点击 控制台 → 个人中心 → API 页面获取。
最终一致性
同亚马逊 S3一样,棱束链对象存储采用最终一致性模型。例如,如果您对某一个文件执行更新操作,则后续读取可能会返回旧数据或已更新的数据,但不会返回部分或损坏的数据。数据存储三副本,保证了高读取吞吐量和高可用性。PUT 请求成功,则表示数据已安全存储。但是,要做到三副本的一致,需要一点时间。
外网访问地址
用户上传对象后,棱束链会自动为对象创建形如以下样式的访问地址:
美国东部1区:http://s3.us-east-1.ossfiles.com/bucketname/objectname.jpeg
默认域名
用户创建 Bucket 后,系统自动为每一个 Bucket 分配一个默认域名,改 Bucket 的域名形式如下:
美国东部1区默认域名为:s3.us-east-1.ossfiles.com
访问控制(ACL)
空间的权限可以设置为公开和私有。私有表示仅创建者可以读写,公开表示所有人可写,所有人可读。
防盗链
防止陌生人链接对象存储中的数据,避免不必要的资源浪费和资金损失。同时也支持基于 HTTP HEAD 中 Referer 的防盗链方法。可以通过控制台设置全网生效的 Referer 白名单或黑名单。
TempSecret 临时授权
系统模型如下图所示:
业务服务器 -> 通过API申请临时Secret → 返回TempSecret -> 终端用户 -> 使用TempSecret -> 上传到棱束链对象存储
注意:
HTTPS 方式安全访问
棱束链对象存储的所有 API 都支持 HTTP 和 HTTPS 两种方式访问。