您可以通过OSS控制台的防盗链功能设置Referer白名单,防止您存储于对象存储OSS的数据被其他人盗链而产生额外的费用。

背景信息

防盗链功能通过设置Referer白名单,限制仅白名单中的域名可以访问您Bucket内的资源。OSS支持基于HTTP和HTTPS header中表头字段Referer的方法设置防盗链。

仅当通过签名URL或者匿名访问Object时,进行防盗链验证;当请求的Header中包含Authorization字段,不进行防盗链验证。

防盗链的API接口详情请参见PutBucketReferer。有关防盗链的详情请参见防盗链

操作步骤

  1. 登录OSS管理控制台
  2. 单击Bucket列表,之后单击目标Bucket名称。
  3. 单击权限管理 > 防盗链
  4. 防盗链区域,单击设置
    • Referer框中,填写域名和IP地址,支持通配符星号(*)和问号(?),多个Referer以换行分隔。示例如下:
      • 配置为www.aliyun.com,可匹配如www.aliyun.com/123www.aliyun.com.cn等以www.aliyun.com为前缀的地址。
      • 配置为*www.aliyun.com/,可匹配http://www.aliyun.com/https://www.aliyun.com/的地址。
      • 通配符星号(*)表示使用星号代替0个或多个字符。例如配置为*.aliyun.com,可匹配如help.aliyun.comwww.aliyun.com等地址。
      • 通配符问号(?)表示使用问号代替一个字符。例如配置为aliyun?.com,可匹配如aliyuna.comaliyunb.com等地址。
      • 支持带端口的域名或IP,例如www.example.com:808010.10.10.10:8080等地址。
    • 允许空Referer框中,选择是否允许Referer为空。

      空Referer表示HTTP或HTTPS请求中,不带Referer字段或Referer字段为空。

      如果不允许空Referer,则只有HTTP或HTTPS header中包含Referer字段的请求才能访问OSS资源。

    说明 当您使用OSS的Bucket域名(如bucketname.oss-cn-zhangjiakou.aliyuncs.com)预览MP4文件时,由于浏览器默认会同时发出两个请求,其中一个为带Referer的请求,另一个为空Referer的请求,因此设置防盗链时必须同时满足在Referer中添加Bucket域名,且允许空Referer的条件。当您使用OSS的Bucket域名预览非MP4文件时,则仅需允许空Referer。
  5. 单击保存

更多参考