GetBucketReferer接口用于查看存储空间(Bucket)的防盗链(Referer)相关配置。
请求语法
GET /?referer HTTP/1.1
Host: BucketName.oss.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
请求头
此接口仅涉及公共请求头。更多信息,请参见公共请求头(Common Request Headers)。
响应元素
名称 | 类型 | 示例值 | 描述 |
RefererConfiguration | 容器 | 不涉及 | 保存Referer配置内容的容器。 父节点:无 子节点:AllowEmptyReferer、AllowTruncateQueryString、RefererList |
AllowEmptyReferer | 枚举字符串 | false | 是否允许Referer字段为空的请求访问。取值如下:
父节点:RefererConfiguration |
AllowTruncateQueryString | 枚举字符串 | true | 是否截断URL中的QueryString。取值如下:
父节点:RefererConfiguration |
TruncatePath | 枚举字符串 | true | 是否截断URL中包括Path在内的后续所有部分。取值如下:
父节点:RefererConfiguration |
RefererList | 容器 | 不涉及 | 保存Referer访问白名单的容器。 父节点:RefererConfiguration 子节点:Referer |
RefererBlacklist | 容器 | 不涉及 | 保存Referer访问黑名单的容器。 父节点:RefererConfiguration 子节点:Referer |
Referer | 字符串 | http://www.aliyun.com | Referer的访问白名单或黑名单记录。 父节点:RefererList或RefererBlacklist |
此接口还涉及其他公共响应头,例如Date、x-oss-request-id等更多信息,请参见公共响应头(Common Response Headers)。
示例
请求示例
Get /?referer HTTP/1.1
Host: oss-example.oss.aliyuncs.com
Date: Thu, 13 Sep 2012 07:51:28 GMT
Authorization: OSS qn6q**************:77Dv****************
返回示例
未设置Referer规则的返回示例
说明如果Bucket未进行Referer相关配置,OSS会返回默认的AllowEmptyReferer值和空的RefererList。
HTTP/1.1 200 x-oss-request-id: 534B371674E88A4D8906**** Date: Thu, 13 Sep 2012 07:56:46 GMT Connection: keep-alive Content-Length: *** Server: AliyunOSS <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>true</AllowEmptyReferer> < RefererList /> </RefererConfiguration>
仅设置白名单Referer规则的返回示例
HTTP/1.1 200 x-oss-request-id: 534B371674E88A4D8906**** Date: Thu, 13 Sep 2012 07:51:28 GMT Connection: keep-alive Content-Length: 218 Server: AliyunOSS <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>true</AllowEmptyReferer> <AllowTruncateQueryString>true</AllowTruncateQueryString> <TruncatePath>true</TruncatePath> <RefererList> <Referer>http://www.aliyun.com</Referer> <Referer>https://www.aliyun.com</Referer> <Referer>http://www.*.com</Referer> <Referer>https://www.?.aliyuncs.com</Referer> </RefererList> </RefererConfiguration>
同时设置白名单Referer以及黑名单Referer规则的返回示例
HTTP/1.1 200 x-oss-request-id: 534B371674E88A4D8906**** Date: Thu, 13 Sep 2012 07:51:28 GMT Connection: keep-alive Content-Length: *** Server: AliyunOSS <?xml version="1.0" encoding="UTF-8"?> <RefererConfiguration> <AllowEmptyReferer>false</AllowEmptyReferer> <AllowTruncateQueryString>true</AllowTruncateQueryString> <TruncatePath>true</TruncatePath> <RefererList> <Referer>http://www.aliyun.com</Referer> <Referer>https://www.aliyun.com</Referer> <Referer>http://www.*.com</Referer> <Referer>https://www.?.aliyuncs.com</Referer> </RefererList> <RefererBlacklist> <Referer>http://www.refuse.com</Referer> <Referer>https://*.hack.com</Referer> <Referer>http://ban.*.com</Referer> <Referer>https://www.?.deny.com</Referer> </RefererBlacklist> </RefererConfiguration>
SDK
此接口所对应的各语言SDK如下:
错误码
错误码 | HTTP 状态码 | 描述 |
NoSuchBucket | 404 | 目标Bucket不存在。 |
AccessDenied | 403 | 没有查看Bucket的Referer配置信息的权限。只有Bucket的拥有者才能查看Bucket的Referer配置信息。 |