GetBucketReferer

GetBucketReferer接口用于查看存储空间(Bucket)的防盗链(Referer)相关配置。

请求语法

GET /?referer HTTP/1.1
Host: BucketName.oss.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

当您在OSS ON云盒中调用该接口时,您需要将Host替换为云盒Endpoint。更多信息,请参见云盒Endpoint

请求头

此接口仅涉及公共请求头。更多信息,请参见公共请求头(Common Request Headers)

响应元素

名称

类型

示例值

描述

RefererConfiguration

容器

不涉及

保存Referer配置内容的容器。

父节点:无

子节点:AllowEmptyReferer、AllowTruncateQueryString、RefererList

AllowEmptyReferer

枚举字符串

false

是否允许Referer字段为空的请求访问。取值如下:

  • true:允许Referer字段为空的请求访问OSS。

  • false:不允许Referer字段为空的请求访问OSS。

父节点:RefererConfiguration

AllowTruncateQueryString

枚举字符串

true

是否截断URL中的QueryString。取值如下:

  • true:截断QueryString。

  • false:不截断QueryString。

父节点:RefererConfiguration

TruncatePath

枚举字符串

true

是否截断URL中包括Path在内的后续所有部分。取值如下:

  • true:截断URL中包括Path在内的后续所有部分。

  • false:不截断URL中包括Path在内的后续所有部分。

父节点:RefererConfiguration

RefererList

容器

不涉及

保存Referer访问白名单的容器。

父节点:RefererConfiguration

子节点:Referer

RefererBlacklist

容器

不涉及

保存Referer访问黑名单的容器。

父节点:RefererConfiguration

子节点:Referer

Referer

字符串

http://www.aliyun.com

Referer的访问白名单或黑名单记录。

父节点:RefererListRefererBlacklist

此接口还涉及其他公共响应头,例如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

没有查看BucketReferer配置信息的权限。只有Bucket的拥有者才能查看BucketReferer配置信息。